首页 > 解决方案 > 如何在 Panda DataFrame 中添加不完整的行?

问题描述

我正在尝试将一行从 DataFrame 复制到另一个。问题来自原点的列没有目的地多,导致情况如下:

origin = pd.DataFrame([[1,2],
                      [3,4]],columns=['A','B'])
destination = pd.DataFrame(columns=['A', 'B', 'C'])

copy = origin[0:1].to_dict()
destination.loc[0] = copy

我收到一个“ValueError:无法设置列不匹配的行”,我用两个相同的 df 进行了测试,效果很好。做我正在尝试的最好方法是什么?我正在考虑为其他目标列动态添加 NaN,但它似乎不是很 Pythonic。

请注意,我试图避免任何 append(),因为我会经常执行该任务,并且我在 Pandas 文档中读到它可能会产生性能问题。

谢谢你的帮助!

标签: pythonpandas

解决方案


插入Series

destination.loc[0]=pd.DataFrame(copy).iloc[0]
destination
Out[672]: 
     A    B   C
0  1.0  2.0 NaN

推荐阅读