簡體   English   中英

使用多索引連接多個.csv dataframe

[英]Concatenate multiple .csv dataframe with multiindex

我正在連接多個如下所示的dfs

                 X                  Y
                 mean   std size   mean         std  size
In_X                    
(10.424, 10.43] 10.425  NaN  1      0.003786    NaN   1
(10.43, 10.435] 10.4    NaN  0      NaN         NaN   0

當我沒有 multiindex dfs時,我正在使用:

extension='csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]
all_dfs = pd.concat([pd.read_csv(f) for f in all_filenames ])

但這引入了一行:

mean   std size   mean          std  size

每次將新的df連接到all_dfs 如何只有原始多索引 header 並避免在級聯 df 中引入二級 header?

read_csv默認只取第一行為 header。 你想用 header 指定兩行header

all_dfs = pd.concat([pd.read_csv(f, header=[0,1] for f in all_filenames ])

將您的多索引轉換為常規列,如下所示:

df.columns = df.columns.map('_'.join)

然后使用pd.concat

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM