如何在pandas中移动列标题

时间:2015-11-11 20:28:34

标签: pandas header ignore shift

我有.txt文件我正在阅读pandas,标题行以' ~A'开头。我需要忽略' ~A'并使下一个标题对应于第一列中的数据。谢谢!

1 个答案:

答案 0 :(得分:2)

你可以这样做:

import pandas as pd
data = pd.read_csv("./test.txt", names=[ 'A', 'B' ], skiprows=1)    
print(data)

和输入的输出:

~A, A, B
1, 2
3, 4

是:

c:\Temp\python>python test.py

   A  B
0  1  2
1  3  4

您必须自己命名列,但鉴于您的文件似乎格式不正确,我认为这并不是那么糟糕。

如果您的标题行在所有文件中都不相同,那么您可以在Python中阅读它们:

import pandas as pd;

# read first line
with open("./test.txt") as myfile:
    headRow = next(myfile)

# read column names    
columns = [x.strip() for x in headRow.split(',')]

# process by pandas
data = pd.read_csv("./test.txt", names=columns[1:], skiprows=1)

print(data);