Python 使用None初始化数据帧

Python 使用None初始化数据帧,python,pandas,dataframe,Python,Pandas,Dataframe,我很难创建一个没有值的数据帧。 为此,我执行了几个步骤,但我相信使用pandas函数可以得到相同的结果 mydata = [] mydata.append([None, None, None, None]) mydata = np.array(mydata) mydata = pd.DataFrame(mydata, columns='Start','End','Duration']) 是否有获得相同结果的命令?我认为您需要从列表创建numpy数组: mydata = pd.DataFr

我很难创建一个没有值的数据帧。 为此,我执行了几个步骤,但我相信使用pandas函数可以得到相同的结果

mydata = []
mydata.append([None, None, None, None])
mydata = np.array(mydata)
mydata = pd.DataFrame(mydata, columns='Start','End','Duration'])   
是否有获得相同结果的命令?

我认为您需要从
列表创建
numpy数组

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
如果使用
索引
值,则所有数据都是
NaN
,并且可以

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
我想您需要从
列表创建
numpy数组

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
如果使用
索引
值,则所有数据都是
NaN
,并且可以

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({'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((2,3))*np.nan,columns=['Start','End','Duration'])   
   Start  End  Duration
0    NaN  NaN       NaN
1    NaN  NaN       NaN
一般情况下,一艘班轮应为:

>>> 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
这是一条一号班轮:

>>> 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((2,3))*np.nan,columns=['Start','End','Duration'])   
   Start  End  Duration
0    NaN  NaN       NaN
1    NaN  NaN       NaN

这是一个快速的一行:

>>> 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((2,3))*np.nan,columns=['Start','End','Duration'])   
   Start  End  Duration
0    NaN  NaN       NaN
1    NaN  NaN       NaN
一般情况下,一艘班轮应为:

>>> 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
这是一条一号班轮:

>>> 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((2,3))*np.nan,columns=['Start','End','Duration'])   
   Start  End  Duration
0    NaN  NaN       NaN
1    NaN  NaN       NaN