首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法删除日期列KeyError:"[' Date ']在轴中找不到

无法删除日期列KeyError:"[' Date ']在轴中找不到
EN

Stack Overflow用户
提问于 2020-10-17 01:23:38
回答 2查看 1.2K关注 0票数 1

我有一个dataframe,它有日期、销售和预算作为列名。我想删除date列,但它给出了一个错误KeyError: "['Date'] not found in axis"

下面是我的代码:

代码语言:javascript
运行
复制
df2 = df.copy()   # make a copy of the dataframe object
df2.drop(columns = ['Date'], inplace=True)   # drop the Date columns

所有列的Datatype

代码语言:javascript
运行
复制
Date                           datetime64[ns]
Sales                                 float64
Budget                                float64
PPV                                   float64
SOPPV                                 float64
dtype: object

完整的Trackback:

代码语言:javascript
运行
复制
KeyError                                  Traceback (most recent call last)
<ipython-input-81-22d4dafeb1cb> in <module>
----> 1 df2 = df.drop(columns = ['Date'], inplace=True)

~/opt/anaconda3/lib/python3.7/site-packages/pandas/core/frame.py in drop(self, labels, axis, index, columns, level, inplace, errors)
   3995             level=level,
   3996             inplace=inplace,
-> 3997             errors=errors,
   3998         )
   3999 

~/opt/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py in drop(self, labels, axis, index, columns, level, inplace, errors)
   3934         for axis, labels in axes.items():
   3935             if labels is not None:
-> 3936                 obj = obj._drop_axis(labels, axis, level=level, errors=errors)
   3937 
   3938         if inplace:

~/opt/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py in _drop_axis(self, labels, axis, level, errors)
   3968                 new_axis = axis.drop(labels, level=level, errors=errors)
   3969             else:
-> 3970                 new_axis = axis.drop(labels, errors=errors)
   3971             result = self.reindex(**{axis_name: new_axis})
   3972 

~/opt/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/base.py in drop(self, labels, errors)
   5016         if mask.any():
   5017             if errors != "ignore":
-> 5018                 raise KeyError(f"{labels[mask]} not found in axis")
   5019             indexer = indexer[~mask]
   5020         return self.delete(indexer)

KeyError: "['Date'] not found in axis"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-17 01:56:47

我相信你在Date之前/之后有一个额外的空间。因此,您可以手动编辑列名,也可以尝试:

代码语言:javascript
运行
复制
df.drop(columns=['Date '],inplace=True)

代码语言:javascript
运行
复制
df.drop(columns=[' Date'],inplace=True)
票数 0
EN

Stack Overflow用户

发布于 2020-10-17 01:41:30

你可以试着用nan df2.dropna()去掉所有的行,然后你我想你可以去掉它?df2.drop(['Date'])

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64393720

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档