我的输入数据文件中有一些标注线(例如“Alabama [edit]”),其中散布着所需的数据。因为第一行是其中之一,当我使用'('作为分隔符时,pandas df.read_table()在关于它们的后续行中出错太长。
简单的回答是告诉read_table跳过第一行,但这感觉很糟糕。有没有办法告诉pandas读取两列,即使它只获取一个数据?
Alabama[edit]
Auburn (Auburn University)[1]
Florence (University of North Alabama)
Jacksonville (Jacksonville State University)[2]
Livingston (University of West Alabama)[2]
Montevallo (University of Montevallo)[2]
Troy (Troy University)[2]
Tuscaloosa (University of Alabama, Stillman College, Shelton State)[3][4]
Tuskegee (Tuskegee University)[5]
Alaska[edit]
Fairbanks (University of Alaska Fairbanks)[2]
...
答案 0 :(得分:0)
解决了它。我需要设置列名,然后它就可以了。
townsDF = pd.read_table('university_towns.txt',
header=None,
names=['RegionName', 'State'],
sep='(',
converters={'RegionName': str, 'State': str}
)
输出
RegionName State
0 Alabama[edit]
1 Auburn Auburn University)[1]
2 Florence University of North Alabama)
3 Jacksonville Jacksonville State University)[2]