Python-如何使用for循環動態創建dataframes

我的代碼當前如下所示:

df_1 = portfolio_all[0].rename(columns={'Close': 'Close_1'} )
df_2 = portfolio_all[1].rename(columns={'Close': 'Close_2'} ) 
df_3 = portfolio_all[2].rename(columns={'Close': 'Close_3'} ) 
df_4 = portfolio_all[3].rename(columns={'Close': 'Close_4'} )
df_5 = portfolio_all[4].rename(columns={'Close': 'Close_5'} ) 


df_1['daily_return_1'] = df_1['Close_1'].pct_change(1)  
df_2['daily_return_2'] = df_2['Close_2'].pct_change(1)   
df_3['daily_return_3'] = df_3['Close_3'].pct_change(1)   
df_4['daily_return_4'] = df_4['Close_4'].pct_change(1)   
df_5['daily_return_5'] = df_5['Close_5'].pct_change(1)      



df_1['perc_ret_1'] = (1 + df_1.daily_return_1).cumprod() - 1  
df_2['perc_ret_2'] = (1 + df_2.daily_return_2).cumprod() - 1  
df_3['perc_ret_3'] = (1 + df_3.daily_return_3).cumprod() - 1  
df_4['perc_ret_4'] = (1 + df_4.daily_return_4).cumprod() - 1  
df_5['perc_ret_5'] = (1 + df_5.daily_return_5).cumprod() - 1  

有沒有一種方法可以在for循環或類似的東西中動態創建這些dataframes,而不必將每個dataframe都寫為一行代碼?

? 最佳回答:

您可以使用簡單的python for-loopenumerate通過list創建

import pandas as pd

portfolio_all = [df1, df2, df3, df4, df5]  

for i, df in enumerate(portfolio_all):
    column_name = f'Close_{i+1}'
    df.rename(columns={'Close': column_name}, inplace=True)
    df[f'daily_return_{i+1}'] = df[column_name].pct_change(1)
    df[f'perc_ret_{i+1}'] = (1 + df[f'daily_return_{i+1}']).cumprod() - 1

假設您將所有dataframes作為一個列表。

這樣,就可以避免對每個DataFrame重復相同的代碼,并且它應該適用于任何數量的DataFrame s在您的portfolio_all列表中。

希望這能有所幫助!

主站蜘蛛池模板: 日本在线视频一区二区| 无码人妻久久一区二区三区免费| 国模吧一区二区三区| 冲田杏梨高清无一区二区| 国产一区二区精品在线观看| 久久se精品一区二区影院| 国产在线精品一区二区不卡| 无码人妻一区二区三区兔费| 日本一区视频在线播放| 国产精品亚洲午夜一区二区三区| 亚洲国产AV一区二区三区四区| 国产成人高清亚洲一区91| 国产美女在线一区二区三区| 日韩免费无码一区二区视频| 精品人妻系列无码一区二区三区| 日韩视频一区二区| 国产福利一区二区三区在线观看 | 久久久久久一区国产精品| 精品一区精品二区制服| 日本免费电影一区二区| 日韩电影在线观看第一区| 在线一区二区三区| 天堂Av无码Av一区二区三区| 久久精品岛国av一区二区无码| 日韩精品一区二区三区中文字幕| 女人18毛片a级毛片一区二区| 亲子乱av一区二区三区| 国产一区二区三区播放心情潘金莲| 日韩免费视频一区| 欧美亚洲精品一区二区| 国产精品成人一区二区三区| 国语精品一区二区三区| 在线免费视频一区二区| 农村乱人伦一区二区| 亚洲乱码一区二区三区在线观看| 国产一区二区在线|播放| 一区二区三区在线观看| 亚洲区精品久久一区二区三区 | 国产视频一区二区| 国产AV一区二区三区传媒| 国产日韩精品一区二区在线观看 |