有没有一种方法可以从所有30个数据框中仅提取一列?

时间:2019-08-15 04:37:27

标签: python pandas

我有30个数据帧,但是从这些数据帧的每一个中,我只希望从其中一列。每个数据框均包含股票价格OHLC,收盘平仓价和交易量。我只想从30个数据框中提取一列,即“调整关闭”

如何在不使代码冗长的情况下做到这一点?

1 个答案:

答案 0 :(得分:1)

使用列表理解:

dfs = [df1, df2, df3...df30]

#if need Series
out = [df['Adj Close'] for df in dfs]
#if need one column DataFrames
#out = [df[['Adj Close']] for df in dfs]

或循环:

out = []
for df in dfs:
    #if need Series
    out.append(df['Adj Close']) 
    #if need one column DataFrames
    out.append(df[['Adj Close']]) 

最后,如果每个系列的每一列都需要一个大型DataFrame:

df_big = pd.concat(out, ignore_index=True, axis=1)