我想在回圈中創建 24 個資料幀,其中第一個資料幀由以下人員創建:
df_hour_0 = df_dummies.copy()
df_hour_0['Price_24_1'] = df_hour_0['Price_REG1']
df_hour_0['Price_24_2'] = df_hour_0['Price_REG2']
df_hour_0['Price_24_3'] = df_hour_0['Price_REG3']
df_hour_0['Price_24_4'] = df_hour_0['Price_REG4']
df_hour_0[['Price_24_1', 'Price_24_2', 'Price_24_3', 'Price_24_4'
]] = df_hour_0[['Price_24_1', 'Price_24_2', 'Price_24_3', 'Price_24_4']].shift(1)
首先,我嘗試了這種方法,但行不通。(也許這種方法的另一個版本可以作業?)。
for i in range(24):
df_hour_i = df_dummies.copy()
df_hour_i['Price_24_1'] = df_hour_i['Price_REG1']
df_hour_i['Price_24_2'] = df_hour_i['Price_REG2']
df_hour_i['Price_24_3'] = df_hour_i['Price_REG3']
df_hour_i['Price_24_4'] = df_hour_i['Price_REG4']
df_hour_i[['Price_24_1', 'Price_24_2', 'Price_24_3', 'Price_24_4']] = df_hour_0[['Price_24_1', 'Price_24_2', 'Price_24_3', 'Price_24_4']].shift(i 1)
現在我讀到人們通常建議使用字典,所以我試過這個:
d = {}
for x in range(23):
d[x] = pd.DataFrame()
這在一本字典中給了我 24 個空的 DF,但現在我為如何填充它們而苦苦掙扎。
uj5u.com熱心網友回復:
像這樣構建一個 DataFrame 串列:
cols = ['Price_24_1', 'Price_24_2', 'Price_24_3', 'Price_24_4']
dfs = []
for i in range(24):
df = df_hour_0.copy()
df[cols] = df[cols].shift(i)
dfs.append(df)
Shift byi將在 index 處i。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/534620.html
上一篇:terraformhelmrelease不能重復使用仍在使用的名稱
下一篇:如何填補每個陣列元素的空白?
