我有一个包含时间序列数据的文件。从这个文件我想删除第一列(包含日期)。
但是,以下代码:
from pandas import read_csv
dataset = read_csv('USrealGDPGrowthPred_Quarterly.txt', header=0)
dataset.drop('DATE', axis=1)
导致出现此错误消息:
ValueError: labels ['DATE'] not contained in axis
但是:标签包含在文件中,如屏幕截图所示。
这里发生了什么?我该怎样摆脱那一栏?
更新:
以下代码:
dataset = read_csv('USrealGDPGrowthPred_Quarterly.txt', header=0, sep='\t')
dataset.drop('DATE', axis=1)
print(dataset.head(5))
不会导致错误消息,但也不会删除列。数据似乎没有发生。
答案 0 :(得分:1)
所以有两个问题:
首先需要更改分隔符到tab
,因为read_csv
默认sep=','
已注释为@cᴏʟᴅsᴘᴇᴇᴅ:
df = read_csv('USrealGDPGrowthPred_Quarterly.txt', header=0, sep='\t')
或使用默认sep='\t'
的{{3}}:
df = df.read_table('USrealGDPGrowthPred_Quarterly.txt', header=0)
然后分配输出或使用read_table
中的inplace=True
:
dataset = dataset.drop('DATE', axis=1)
或者:
dataset.drop('DATE', axis=1, inplace=True)`