我想用下面的代碼創建一個熊貓資料框
import pandas as pd
pd.DataFrame({'A' : 'First', 'B' : for i in range(1:10) : 'data' i.astype(str)})
有了這個我得到以下錯誤
File "<stdin>", line 1
pd.DataFrame({'A' : 'First', 'B' : for i in range(1:10) : 'data' i.astype(str)})
^
SyntaxError: invalid syntax
你能幫我理解我在上面的代碼中哪里錯了嗎?我試圖在fataframe下面創建

任何指標將不勝感激。
uj5u.com熱心網友回復:
我的回答是簡單的使用串列理解。
t = pd.DataFrame({'A' : 'First', 'B' : ['data' str(i) for i in range(1,11)]})
print(t)
A B
0 First data1
1 First data2
2 First data3
3 First data4
4 First data5
5 First data6
6 First data7
7 First data8
8 First data9
9 First data10
您的代碼的問題是您嘗試以串列理解的形式應用基本的 for 回圈,因此要解決此問題,您必須使用提到的正確串列理解。希望你得到你做錯了什么的答案。請享用!
uj5u.com熱心網友回復:
嘗試:
pd.DataFrame({'A' : 'First', 'B' : [f'data{i}' for i in range(1,11)]})
輸出:
A B
0 First data1
1 First data2
2 First data3
3 First data4
4 First data5
5 First data6
6 First data7
7 First data8
8 First data9
9 First data10
使用帶有 f 字串格式的串列理解。
uj5u.com熱心網友回復:
用串列理解替換for回圈
import pandas as pd
df = pd.DataFrame({'A' : 'First', 'B' : [f'data{i}' for i in range(1,11)]})
print(df)
A B
0 First data1
1 First data2
2 First data3
3 First data4
4 First data5
5 First data6
6 First data7
7 First data8
8 First data9
9 First data10
uj5u.com熱心網友回復:
根據您的示例,您可以改為使用 f 字串執行以下操作。另外,請記住,范圍內的第二個引數將是您想要的值加 1。
語法錯誤源于您嘗試實作的串列理解格式,以及在range函式中使用“:”而不是“,”。
import pandas as pd
pd.DataFrame({'A' : 'First', 'B' : [f"data{i}" for i in range(1,11)]})
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/439646.html
標籤:python-3.x 熊猫
上一篇:`==`和`and`之間的區別
下一篇:如何從終端從另一個目錄獲取模塊?
