检测某些列并删除

2024-04-25 14:42:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据帧,其中一些列(不是行)类似于["","","",""]。你知道吗

我想删除那些具有特征的列。你知道吗

有没有有效的方法?你知道吗


Tags: 数据方法具有特征
2条回答

pandas中是del df['columnname']。你知道吗

要删除所有值都为空的列,首先需要检测哪些列只包含空值。你知道吗

所以我做了一个数据帧示例如下:

     empty  full  nanvalues  notempty
0              3        NaN         1
1              4        NaN         2

使用apply函数,我们可以将整列与空字符串进行比较,然后使用.all()方法进行聚合。你知道吗

empties = (df.astype(str) == "").all()
empties

empty         True
full         False
nanvalues    False
notempty     False
dtype: bool

现在我们可以放下这些列了

empty_mask = empties.index[empties]
df.drop(empty_mask, axis=1)

   full  nanvalues  notempty
0     3        NaN         1
1     4        NaN         2

相关问题 更多 >