我很難創建一個DataFrame值爲None的值。 要做到這一點我執行幾個步驟,但我相信我能得到利用大熊貓功能相同的結果...使用None初始化熊貓數據框
mydata = []
mydata.append([None, None, None, None])
mydata = np.array(mydata)
mydata = pd.DataFrame(mydata, columns='Start','End','Duration'])
是否有一個命令得到同樣的結果嗎?
我很難創建一個DataFrame值爲None的值。 要做到這一點我執行幾個步驟,但我相信我能得到利用大熊貓功能相同的結果...使用None初始化熊貓數據框
mydata = []
mydata.append([None, None, None, None])
mydata = np.array(mydata)
mydata = pd.DataFrame(mydata, columns='Start','End','Duration'])
是否有一個命令得到同樣的結果嗎?
我認爲你需要reshape
numpy array
從list
創建:
mydata = pd.DataFrame(np.array([None, None, None]).reshape(-1,3),
columns=['Start','End','Duration'])
print (mydata)
Start End Duration
0 None None None
與[[]]
另一個slowier解決方案:
mydata = pd.DataFrame([[None, None, None]], columns=['Start','End','Duration'])
print (mydata)
Start End Duration
0 None None None
如果使用columns
和index
值,所有的數據都是NaN
和可能replace
他們到None
:
print (pd.DataFrame(columns=['Start','End','Duration'], index=[0]))
Start End Duration
0 NaN NaN NaN
mydata = pd.DataFrame(columns=['Start','End','Duration'], index=[0]).replace({np.nan:None})
print (mydata)
Start End Duration
0 None None None
另一種方法是:
pd.DataFrame({'Start':[None],'End':[None],'Duration':[None]})
這裏是一個快速的一行:
>>> pd.DataFrame(np.empty((4,3),dtype=pd.Timestamp),columns=['Start','End','Duration'])
Start End Duration
0 None None None
1 None None None
2 None None None
3 None None None
在一般情況下,一個班輪將作爲去:
>>> pd.DataFrame(np.empty((5,3),dtype=object),columns=['Start','End','Duration'])
Start End Duration
0 None None None
1 None None None
2 None None None
3 None None None
4 None None None
這是一個NaN單線:
>>> pd.DataFrame(np.empty((2,3))*np.nan,columns=['Start','End','Duration'])
Start End Duration
0 NaN NaN NaN
1 NaN NaN NaN