首页 > 解决方案 > Pandas concat 结果与 NaN 不一致

问题描述

我有一个数据框,用于拟合具有分类和数字特征的 ML 算法。因此,我拆分了这个 df 并使用单热编码转换了分类特征,现在我有 numpy 矩阵,我必须将它与数字特征连接回 df,因此数字数据帧的第一行将获得第一行矩阵作为新特征。

给出谷歌搜索“加入数据框”命令的文档和结果

pd.concat([X_numerical, pd.DataFrame(numpy_matrix)], axis=1)

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

结果示例

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

标签: pythonpandasdataframeconcat

解决方案


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

df = pd.concat([
       X_numerical.reset_index(), 
       pd.DataFrame(numpy_matrix)
   ], axis=1)

推荐阅读