繁体   English   中英

pandas dataframe 删除列名 无

[英]pandas dataframe drop column name None

如题。 我有一个带有None列的 dataframe,我想删除它们。

sheet_df.info()

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 181 entries, 1 to 181
Data columns (total 4 columns):
 #   Column           Non-Null Count  Dtype  
---  ------           --------------  -----  
 0   Timestamp        181 non-null    object 
 1   Score            181 non-null    object 
 2   Full Name        181 non-null    object 
 3   None             181 non-null    object

列名不是字符串"None" ,它是None object。

我试图像往常一样drop

sheet_df.drop(sheet_df[None], axis=1, inplace=True)
sheet_df.drop(None, axis=1, inplace=True)
sheet_df.drop(np.nan, axis=1, inplace=True)

以上所有,都不行。

删除而不是获取特定列的原因是因为列不一致,因此drop列是更好的选择。

但是,如果有更好的方法或者我错过了什么,请指导。 谢谢你。

我们可以使用del

...
del sheet_df[None]

由于None与 arguments 到DataFrame.drop的默认值一致,因此会出现混淆并且不会发生丢弃。

一种补救方法是提供一个包含 1 个元素的列表:

df = df.drop([None], axis=1)

或等效地,

df = df.drop(columns=[None])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM