我试图连接两个Pandas Dataframe ,但不幸的是它不工作,这是以下代码:
train_df =pd.concat([x_train,y_train],axis =1 )
print(train_df)
y_train和x_train的长度相同,并且大小和行索引都正确,我只希望将它们连接起来,就像将两个矩阵连接在一起一样。
Age Sex HighChol BMI ... PhysHlth DiffWalk HighBP Diabetes
0 10.0 1.0 1.0 33.0 ... 30.0 0.0 1.0 NaN
1 10.0 1.0 0.0 21.0 ... 30.0 1.0 1.0 1.0
2 4.0 0.0 0.0 32.0 ... 7.0 0.0 0.0 1.0
3 11.0 1.0 1.0 35.0 ... 10.0 1.0 1.0 0.0
4 10.0 0.0 1.0 27.0 ... 0.0 0.0 1.0 1.0
... ... ... ... ... ... ... ... ... ...
996 3.0 0.0 1.0 33.0 ... 0.0 0.0 0.0 0.0
997 9.0 0.0 1.0 41.0 ... 30.0 1.0 1.0 0.0
998 12.0 0.0 1.0 34.0 ... 0.0 0.0 1.0 1.0
999 6.0 0.0 0.0 31.0 ... 0.0 0.0 0.0 0.0
1000 NaN NaN NaN NaN ... NaN NaN NaN 1.0
[1001 rows x 15 columns]
因为某种原因好像加了一行nan
编辑:显然y_train是一个系列
1条答案
按热度按时间avwztpqn1#
在
y_train
和x_train
索引之间有一个移位:x_train
索引范围为0-999,而y_train
索引范围为1-1000。pd.concat
使用此索引对齐行。解决方法是:但是要小心,你必须找到为什么你有这个转变。
注意:
y_train
是一个名称为Diabetes
的Series
,这就是为什么train_df
的最后一列是Diabetes
。