【发布时间】:2022-02-02 10:33:29
【问题描述】:
我有 3 个pd.DataFrame,我想应用相同的操作(带循环)创建 3 个新的 DataFrame。
d = {}
dfs=[d10,d11,acc]
for i in dfs:
a = (i.groupby('Variable').cumcount()).reset_index()
d[i] = pd.DataFrame(a)
我尝试将它保存在字典中,但我得到的错误是:
TypeError: 'DataFrame' 对象是可变的,因此它们不能被散列
【问题讨论】:
-
您正在尝试使用 DataFrame 作为字典键。这是不允许的。您可以将它们存储在列表中,也可以使用整数作为键,但不能使用 DataFrame。
-
感谢您的回答。如何将它们存储在列表中? @蒂姆罗伯茨
-
您已经有
dfs作为列表。只需创建d = []并执行d.append( pd.DataFrame(a) )。现在这两个列表是并行的。 -
感谢您的帮助!我已经解决了@TimRoberts