0
我有一些代碼目前看起來是這樣的:優雅的方式與多個dataframes工作,大熊貓
if os.path.isfile('D:\\df_1'):
df_1 = pd.read_pickle('D:\\df_1')
else:
df_1 = pd.DataFrame(columns = ['Date', 'Location', 'Product'])
if os.path.isfile('D:\\df_2'):
df_2 = pd.read_pickle('D:\\df_2')
else:
df_2 = pd.DataFrame(columns = ['Date', 'Location', 'Product'])
[...]
if os.path.isfile('D:\\df_20'):
df_20 = pd.read_pickle('D:\\df_20')
else:
df_20 = pd.DataFrame(columns = ['Date', 'Location', 'Product'])
基本上我做的是檢查,如果數據幀已經存在,如果它不加載它否則創建一個空的數據框。我需要這樣做,因爲代碼會嘗試將新數據附加到每個數據幀。所以,我會碰到這樣的:
[retrieve new data and clean it]
df_1 = pd.concat([df_1, df_1_new_data])
這樣做對所有的20個dataframes我有(它們含有不同的東西,所以我想將它們分開),然後將其保存,以當日再次檢索它們並添加新的數據給他們:
df_1.to_pickle('D:\\df_1')
df_2.to_pickle('D:\\df_2')
[...]
df_20.to_pickle('D:\\df_20')
現在,它已經非常沉重,做20個數據幀,但我可能需要添加更多!有沒有辦法讀取不同的數據框,然後將它們寫入for循環或類似的東西?那麼爲了減少我現在有許多簡單的2行代碼循環的代碼行?謝謝!
你爲什麼不在循環中做這些事情? –
我需要動態地創建變量名稱,並且我知道這將是一件壞事。 – giga
使用字典。 –