简体   繁体   English

在 Python for 循环中重命名数据框

[英]Rename dataframe in Python for loop

I am trying to rename a dataframe in each iteration of my for loop.我正在尝试在 for 循环的每次迭代中重命名数据帧。 For column "item" in the "data" dataframe, I would like to generate dataframes up to the number of unique items in "item" column.对于“数据”数据框中的“项目”列,我想生成最多为“项目”列中唯一项目数的数据框。

for item in data.item.unique():
    data+"item" = data[data["item"] == item]

Use a dictionary:使用字典:

frames = {}
for item in data['item'].unique():
    frames[item] = data[data['item'] == item]

IIUC,你可以只使用groupby

frames = {k:d for k,d in data.groupby('item')}

My advice is use dictionaries.我的建议是使用字典。

Your answer is this:你的回答是这样的:

for i in data.item.unique():
    globals()[f'data{i}'] = data[data["item"] == i]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM