Python 用多索引连接多个.csv数据帧

Python 用多索引连接多个.csv数据帧,python,pandas,Python,Pandas,我正在连接多个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

我正在连接多个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
当我没有多索引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连接到所有_df时。
如何仅使用原始的多索引标题并避免在连接的df中引入第二级标题?

将多索引转换为常规列,如下所示:

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

然后使用pd.concat将多索引转换为常规列,如下所示:

df.columns = df.columns.map('_'.join)
然后使用pd.concat

读取csv,默认情况下仅将第一行作为标题。要指定具有标题的两行标题:

默认情况下,read_csv仅将第一行作为标题。要指定具有标题的两行标题:


更改标题=[0,1?它起作用了,但出于某种原因,它没有使用原来的:`X Y``平均标准大小mean std size`主标题改为:`Y X``平均标准大小mean std size`子标题是e也倒转了,所以没什么大不了的=[0,1?它起作用了,但出于某种原因,它没有使用原来的:`X Y``平均标准大小mean std size`主标题改为:`Y X``平均标准大小mean std size`子标题是e也倒转了,所以没什么大不了的。