python - 如何通过python中的键在循环中命名熊猫数据框?
Posted
技术标签:
【中文标题】python - 如何通过python中的键在循环中命名熊猫数据框?【英文标题】:How to name pandas dataframes in a loop by their key in python? 【发布时间】:2015-10-10 07:32:08 【问题描述】:我想在循环中创建数据帧,但使用键命名每个数据帧,以免覆盖循环中的每个数据帧。
这是我的数据框的简化版本:
ID Field Value
1 A 1.1
2 A 1.2
3 A 2.4
4 B 1.7
5 B 4.3
6 C 2.2
所以在这种情况下,我希望得到 3 个名为 A、B 和 C 的数据框 所以这就是我累的:
df2= df.groupby(['Field'])
for key, group in df2:
key = group.reset_index()
当然,每个连续循环都会覆盖名称“key”。 如何通过键命名循环中的每个数据帧?
我还想创建一个已创建数据框的列表以跟踪它们。
【问题讨论】:
【参考方案1】:您想将对象存储在字典中:
df_dict =
for key, group in df2:
df_dict[key] = group.reset_index()
【讨论】:
【参考方案2】:使用字典理解,更简洁的解决方案如下:
df_new = field: df.loc[df.Field == field, :] for field in df.Field.unique()
【讨论】:
以上是关于python - 如何通过python中的键在循环中命名熊猫数据框?的主要内容,如果未能解决你的问题,请参考以下文章
使用dictionary_1的键在dictionary_2的值中搜索匹配项[重复]