【发布时间】:2017-09-06 00:48:13
【问题描述】:
我正在尝试按行组合两个表(彼此堆叠,例如在 R 中使用 rbind)。我已按照以下步骤操作:
how to combine two data frames in python pandas
但是“附加”或“连接”都不适合我。
关于我的数据
我有两个熊猫数据框对象(类型类'pandas.core.frame.DataFrame'),都有 19 列。当我打印每个数据框时,它们看起来很好。
问题
所以我创建了另一个熊猫数据框:
query_results = pd.DataFrame(columns=header_cols)
然后在一个循环中(因为有时我可能会组合不止 2 个表)我正在尝试组合所有表:
for CCC in CCCList:
query_results.append(cost_center_query(cccode=CCC))
其中 cost_center_query 是一个自定义函数,它返回与 query_results 具有相同列名的 pandas 数据框对象。
但是,有了这个,每当我打印“query_results”时,我都会得到空数据框。
知道为什么会这样吗?也没有错误消息,所以我很困惑。 非常感谢您的任何建议!
【问题讨论】:
-
.append返回一个新数据框,您需要将其分配给某物,否则结果将被丢弃。 -
将存储结果附加到变量中后,该变量将保存您想要的值。
-
注意,在你引用的问题中,接受的答案有
bigdata = data1.append(data2, ignore_index=True) -
啊!太感谢了!这是一个非常简单的修复!不好意思问这样的初学者问题,但感谢大家的快速帮助!