此问题的背景是1月1日至1月30日,我有30个CSV文件。我编写了一个函数,该函数可以一次自动清除一个数据帧。现在,我需要编写另一个函数来处理所有数据帧,并为所有30个数据帧添加一列“ city”。然后将它们导出到文件夹中。我被困在添加列和导出部分。我试图使用'df_cluster ['city'] = city_dict.keys()',但是它什么也没做。
非常感谢您的帮助。
这是我的代码:
def process_all_data(file, city):
df_cluster = pd.read_excel(f'./data/{file}')
df_cluster['price_usd'] = df_cluster['price_eu']*1.1
df_cluster['weight_lb'] = df_cluster['weight_kg']*2.2
df_cluster = pd.merge(plu, df_cluster, how='left', left_on='plu_code', right_on='prodcode')
df_cluster.drop(['price_eu','weight_kg', 'plu_code'], axis=1, inplace=True)
df_cluster['date'] = f'{file}' # Creat a new column 'date'.
df_cluster['date'] = df_cluster['date'].str.strip('.xlsx')
df_cluster['city'] = city_dict.keys()
#taking away the '.xlsx' in the value. and resign back to 'date'.
return df_cluster
这是我得到的城市字典。
city_dict = {"Atlanta": "atl.csv", "Austin": "atx.csv", "Boston": "bos.csv", "Chicago": "chi.csv", "Denver": "den.csv", "Los Angeles": "lax.csv", "New York": "nyc.csv", "San Francisco": "sf.csv", "Seattle": "sea.csv", "Washington, DC": "dc.csv"}