Python newdf=pd.concat([df1,df2],axis=0),现在newdf的每一行都是一个数据帧?

Python newdf=pd.concat([df1,df2],axis=0),现在newdf的每一行都是一个数据帧?,python,dataframe,concat,Python,Dataframe,Concat,请尝试此代码: import numpy as np import pandas as pd df1 = pd.DataFrame(np.random.randn(3,4),columns=['a','b','c','d']) df2 = pd.DataFrame(np.random.randn(2,4),columns=['a','b','c','d']) newdf = pd.concat([df1,df2] , axis = 0) print type(newdf.loc[0]) 结果是

请尝试此代码:

import numpy as np
import pandas as pd
df1 = pd.DataFrame(np.random.randn(3,4),columns=['a','b','c','d'])
df2 = pd.DataFrame(np.random.randn(2,4),columns=['a','b','c','d'])
newdf = pd.concat([df1,df2] , axis = 0)
print type(newdf.loc[0])
结果是“pandas.core.frame.DataFrame”

但我认为这应该是一个“系列”


这是一个bug还是我错了?

它应该是一个
数据帧
,因为在连接之后,您有两行索引为0
newdf.loc[0]
返回一个2x4
DataFrame

具体来说,在我的例子中,它返回一个
数据帧
,如下所示:

Out[50]: 
      a         b         c         d
0  1.302054 -0.274331 -1.131744 -1.736018
0  0.811842 -1.225765  1.258529  0.647977
要获取序列,您可以在
pd.concat
中使用
ignore_index
参数-然后索引值将从0到4,而不是0,1,2,0,1:

newdf = pd.concat([df1,df2] , axis = 0, ignore_index=True)