如何基于区域统计数据集生成带城市列的多个DataFrame?
解决方案:基于原始数据集生成多城市对应数据集
核心思路
既然原始数据集没有城市列,我们可以为每个目标城市复制一份原始数据,添加对应的城市名称列,最后将这些新的DataFrame存入字典,用城市名作为键来快速访问。
代码实现(Pandas)
import pandas as pd # 示例原始数据集(实际使用时替换为你的df) df = pd.DataFrame({ 'date': ['2024-01-01', '2024-01-02', '2024-01-03'], 'name_region': ['Region A', 'Region B', 'Region C'] }) city_list = ['Los Angeles', 'San Diego', 'San Jose'] # 初始化字典存储各城市DataFrame df_city = {} for city in city_list: # 复制原始数据,避免修改原数据集 city_specific_df = df.copy() # 添加城市名称列 city_specific_df['city'] = city # 将新DataFrame存入字典 df_city[city] = city_specific_df # 访问示例 print(df_city['Los Angeles'])
说明
- 每个城市的DataFrame都是原始数据的独立副本,修改其中一个不会影响其他或原始数据集
- 通过
df_city['城市名']可以直接调取对应城市的数据集,完全符合需求 - 如果原始数据集规模极大,可考虑按需生成(比如用函数动态返回)来节省内存,但常规场景下复制的方式简单高效
内容的提问来源于stack exchange,提问作者kostya ivanov
相关产品推荐
相关产品推荐

