如何从R中少于2个唯一级别的数据框中删除列

冲浪

我有一个带有约200,000行数字和分类变量的数据集,但是许多变量都是常量(数字和cat)。我正在尝试创建一个新的数据集,其中length(unique(data.frame$factor))<=1删除变量。

到目前为止的示例数据集和尝试:

Temp=c(26:30)
Feels=c("cold","cold","cold","hot","hot")
Time=c("night","night","night","night","night")
Year=c(2015,2015,2015,2015,2015)
DF=data.frame(Temp,Feels,Time,Year)

我认为循环会起作用,但是下面的2次尝试都无法解决问题。我试过了:

for (i in unique(colnames(DF))){
  Reduced_DF <- DF[,(length(unique(DF$i)))>1]
}

但是我真的需要一个向量,其中长度(unique(DF $ columns))> 1,所以我尝试了下面的方法,但是没有用。

for (i in unique(DF)){
  if (length(unique(DF$i)) >1)
  {keepvars <- c(DF$i)}
  Reduced_DF <- DF[keepvars]
}

有没有人有过这种类型的子集/删除列的经验,而该子集/列数少于特定级别?

戴维·罗宾逊

您可以通过以下方式找出每列中有多少个唯一值:

sapply(DF, function(col) length(unique(col)))
#  Temp Feels  Time  Year 
#  5     2     1     1 

您可以使用此子集来划分列:

DF[, sapply(DF, function(col) length(unique(col))) > 1]
#   Temp Feels
# 1   26  cold
# 2   27  cold
# 3   28  cold
# 4   29   hot
# 5   30   hot

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从R中的数据框中删除包含唯一因子级别的行?

Vue JS-在同一级别的两个组件中传递数据

如何将带有多索引列的 Pandas 数据框导出到 Excel,其中一个级别中的列名未合并,另一级别中的列名合并?

如何将两个图片放在同一级别的word文件(.docx)python中

如何打印一组中同一级别的所有节点?

具有多级列的熊猫数据框:重命名特定级别的列,使其与另一级相同

熊猫多索引数据框:同一级别有2个值

在R中,如何创建多级radioGroupButtons,因为每个级别都取决于choiceNames取决于前一级别的输入?

如何在R中删除数据帧头的第一级?

从同一级别的不同目录中删除具有相同名称的子目录

Selenium / Python:如何在与另一个类处于同一级别的某个类中捕获按钮的所有实例?

如何在MongoDB中的嵌入式文档中获得同一级别的所有字段

是否可以在doxygen中与主/索引页面处于同一级别的两个链接

如何检查 div .has() 2 个元素是否在 div 中处于同一级别

同一级别中的3列

如何按日期查询结果调整SQL聚合以合并某些列中存在空值的同一级别的值

如何在 R 的数据框中创建具有三个级别的因子?

如何将Java文件编译到与Java文件处于同一级别的目录中?

如何获得具有相同属性的同一级别的元素或数据列表?

XDocument如何获取不在同一级别的两个节点的父节点

在嵌套数据框中,如何仅计算每个唯一 ID 的最高级别的分类变量

解析与beautifulsoup4中的html标记处于同一级别的文本

查找共享同一级别的两个级别的值的比例

熊猫数据框从“父级”和“子级”列中删除最后一个“ \”

如何使用dplyr将变量从数字转换为具有唯一级别的因子

如何根据R中另一个数据框中的列删除列数据框中的行?

如何使数据框中的列唯一?

检查字典中是否有一个键并提取同一级别的另一个键

确定数据框的一列中两个级别的10个最大值