Pandas concat 结果与 NaN 不一致

Vla*_*nov 3 python concatenation dataframe pandas

我有一个数据框,用于将机器学习算法与分类和数值特征相匹配。因此,我分割了这个 df 并使用 one-hot 编码转换了分类特征,现在我有了 numpy 矩阵,我必须将其连接回带有数字特征的 df ,因此数字数据帧的第一行将获得第一个矩阵行作为新特征。

给出谷歌搜索“join dataframes”命令的文档和结果

pd.concat([X_numerical, pd.DataFrame(numpy_matrix)], axis=1)
Run Code Online (Sandbox Code Playgroud)

但我得到了这个 - 就像“axis”参数被忽略(我清理了 np.nan 中的所有原始数据):

结果示例

我究竟做错了什么?我期望得到没有这些 NaN 的结果数据帧,其中 df 行与矩阵行一一连接

cs9*_*s95 6

我发现索引未对齐可能存在问题。最好的办法是重置索引:

df = pd.concat([
       X_numerical.reset_index(), 
       pd.DataFrame(numpy_matrix)
   ], axis=1)
Run Code Online (Sandbox Code Playgroud)