我与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。我相信还有一个更优雅的解决方案。
您可以通过索引上述一系列创建列的列表,并删除所有列,
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]