探索性数据分析 - 通过使用来自pd.Series.nunique输出删除所有列

问题描述 投票:0回答:1

我与96个变量的数据集,这是一个更大的dataset.I一片正在找丢弃这些列其中仅列单个值进行EDA。

data_SS.apply(pd.Series.nunique)#这个发现,我有超过那里有一个值十几个变量。他们是不相关的变量。

我用行标题定义我#columns

columns = ['aaa', 'bbb', 'ccc', 'ddd' .....]

然后下降的列。

data.drop(columns, inplace = True, axis = 1)

该做的工作。不过,我不知道是否有办法输出从pd.Series.nunique迭代,因为我基本上要删除的列,其中产值== 1。我相信还有一个更优雅的解决方案。

python pandas analysis
1个回答
0
投票

您可以通过索引上述一系列创建列的列表,并删除所有列,

cols_to_drop = df1.loc[:,df1.nunique().eq(1)].columns
df1.drop(cols_to_drop, inplace = True, axis = 1)

寻找列放弃的另一种方法,

s = df1.nunique().eq(1)
cols_to_drop = s.index[s]
© www.soinside.com 2019 - 2024. All rights reserved.