为了账号安全,请及时绑定邮箱和手机立即绑定

根据列中的字符串合并数据帧列表,然后将其转换为字典

根据列中的字符串合并数据帧列表,然后将其转换为字典

斯蒂芬大帝 2022-08-16 10:41:58
任务描述我想根据列(国家/地区)中的字符串合并数据帧列表,然后将其转换为字典,并将国家/地区列作为键,将合并的数据帧作为值。数据示例:国家名称列表country_names = ['ITA', USA', 'UK', 'ARG']名为 df_countries 的数据帧列表df_countries[0]  index   Date      A   B   C  Country         1   2019-12-31  x   y   z    ITA    2   2019-12-30  x   y   z    ITA    df_countries[1]  index   Date      A   B   C  Country         1   2019-12-31  x   y   z    ITA    2   2019-12-30  x   y   z    ITA    df_countries[2]  index   Date      A   B   C  Country         1   2019-12-31  x   y   z    USA    2   2019-12-30  x   y   z    USA    df_countries[3]  index   Date      A   B   C  Country         1   2019-12-31  x   y   z    ARG    2   2019-12-30  x   y   z    ARG    例如,我希望ITA在合并后看起来像下面这样,然后从中创建一个以ITA为键的字典等:  index   Date      A   B   C  Country         1   2019-12-31  x   y   z    ITA    2   2019-12-30  x   y   z    ITA           3   2019-12-31  x   y   z    ITA    4   2019-12-30  x   y   z    ITA  任何帮助都会超级棒!
查看完整描述

1 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

从我的评论中详细阐述了一下:您可以首先将所有数据帧与 合并,然后选择匹配的行并从中创建新的数据帧:pd.concat()


merged_frame = pd.concat(df_countries)

country_dict = {}

for country in country_names:

    country_dict[country] = merged_frame[merged_frame['Country'] == country]

(可选)您还可以调用来修复新帧的索引。country_dict[country].reset_index()


查看完整回答
反对 回复 2022-08-16
  • 1 回答
  • 0 关注
  • 74 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信