Pandas 为什么列名不超过实际列并在dataframe中创建新列?

Pandas 为什么列名不超过实际列并在dataframe中创建新列?,pandas,dataframe,python-3.5,Pandas,Dataframe,Python 3.5,我正在为pandas中的数据帧分配列名,但列名正在创建新列。我如何解决这个问题 dataframe现在看起来是什么样子: abs_subdv_cd abs_subdv_desc 0 A0001A ASHTON ... NaN 1 A0002A J. AYERS ...

我正在为pandas中的数据帧分配列名,但列名正在创建新列。我如何解决这个问题

dataframe现在看起来是什么样子:

                                     abs_subdv_cd  abs_subdv_desc
0  A0001A    ASHTON                              ...             NaN
1  A0002A    J. AYERS                            ...             NaN
2  A0003A    NEWTON ALLSUP                       ...             NaN
3  A0004A    M. AUSTIN                           ...             NaN
4  A0005A    RICHARD W. ALLEN                    ...             NaN
我希望dataframe看起来像:

 abs_subdv_cd  abs_subdv_desc
0  A0001A    ASHTON                              
1  A0002A    J. AYERS                            
2  A0003A    NEWTON ALLSUP                       
3  A0004A    M. AUSTIN                           
4  A0005A    RICHARD W. ALLEN   
迄今为止的代码:

import pandas as pd

###Declaring path###
path = ('file_path')

###Calling file in folder###
appraisal_abstract_subdv = pd.read_table(path + '/2015-07-28_003820_APPRAISAL_ABSTRACT_SUBDV.txt',
                             encoding = 'iso-8859-1' ,error_bad_lines = False,
                             names = ['abs_subdv_cd','abs_subdv_desc'])
print(appraisal_abstract_subdv.head())
-编辑-

当我尝试评估\u abstract\u subdv.shape.时,数据框将shape显示为(4000,1),其中as数据有两列

我使用的数据示例如下:

A0001A    ASHTON                                  
A0002A    J. AYERS

提前谢谢。

熊猫中有一个重命名功能,您可以使用它来获取列名

appraisal_abstract_subdv.columns.values
然后使用这些列名使用此方法适当地重命名它们

df.rename(columns={'OldColumn1': 'Newcolumn1', 'OldColumn2': 'Newcolumn2'}, inplace=True)

看起来您的数据文件有另一个分隔符(不是制表符,它是
pd.read\u table()
)的默认分隔符),所以请尝试使用:
sep='\s+'
delim\u whitespace=True
参数

要在读取数据文件后检查列,请执行以下操作:

print(df.columns.tolist())

但是数据没有列,所以我不能重命名它。我只想说出它的名字。另外,当我尝试df.shape时,它只显示一列,其中有两列。不知道为什么会这样。将其添加到主要问题
evaluation\u abstract\u subdv.columns.values
中以获取名称我不知道为什么,但文件是用一列读取的,当我要重命名它时,会出现错误“长度不匹配:预期轴有1个元素,新值有两个”不确定为什么它会将数据文件作为两列而不是1来读取。您是从.txt文件中读取的吗?列之间是否有逗号?.txt文件中可能没有分隔符,因此它将每行作为一列读取。正确读取文本文件,但您的权限没有分隔符,我需要修复数据。但我会记下你的答案是正确的。