Python 合并数据帧上的多索引列名
我有一个csv文件,它的列名在不同的行上分开,如下所示:Python 合并数据帧上的多索引列名,python,pandas,Python,Pandas,我有一个csv文件,它的列名在不同的行上分开,如下所示: ID,Flow,Flow ,,Type 1,21.79,1 2,1129.32,0 因此,列名是ID、Flow和Flow Type。当我将此csv作为多索引数据帧读取时: df = pandas.read_csv(path, header = [0,1]) 我最终得到了 ID Flow Unnamed: 0_level_1 Unnamed: 1_level_1
ID,Flow,Flow
,,Type
1,21.79,1
2,1129.32,0
因此,列名是ID、Flow和Flow Type。当我将此csv作为多索引数据帧读取时:
df = pandas.read_csv(path, header = [0,1])
我最终得到了
ID Flow
Unnamed: 0_level_1 Unnamed: 1_level_1 Type
1 21.79 1
2 1129.32 0
有没有一种简单的方法可以合并列名,这样我就可以得到一个带有列名的简单列索引?最后,我想有相当于
pandas.DataFrame({'ID': [1,2], 'Flow': [21.79, 1129.32], 'Flow Type': [1,0]})
此方法假定您知道列的顺序及其名称,以及要跳过的行数 如果是的话,你可以 pd.read_csv'temp.csv',skiprows=2,name=['ID','Flow','Flow Type'] 这里,列名是['ID'、'Flow'、'Flow Type'],我们将从'temp.csv'文件中跳过skiprows=2 应以预期方式读取csv。但是,如果列顺序和skiprows发生变化,此方法将不起作用。pd.read\u csv'temp.csv',skiprows=2,name=['ID','Flow','Flow Type']可能是什么?假设您知道标题名称,那么您可以跳过。