r - 使用which()从数据集中过滤掉列

标签 r dataset

我正在与 mtcars 合作数据集。我正在尝试创建一个新数据集,其中仅包含非整数列。为此,我尝试了几件事,主要是尝试使用 lapply像这样: > newdata <- lapply(mtcars, Negate(is.integer)) 但这并没有返回我需要的东西。在练习中,有人告诉我们 which() 可以帮助我们做到这一点,所以我问 - 如何? 谢谢

最佳答案

您可以使用Filter来选择非整数的列。

Filter(Negate(is.integer), mtcars)
#Or explicitly mentioning non-integers
#Filter(function(x) !is.integer(x), mtcars)

dplyr中,我们可以使用select_if

library(dplyr)
mtcars %>%  select_if(Negate(is.integer))
#mtcars %>%  select_if(~!is.integer(.))

关于r - 使用which()从数据集中过滤掉列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60884961/

相关文章:

r - glm 中的系数与 loglm 中的系数

r - 将形状文件从多边形转换为点?

r - 使用 data() 使用变量而不是数据集名称将数据集加载到 R 中

python - 大数据集的字典接口(interface)

python - Tensorflow Dataset API 读取 csv 转换 tfrecords

c# - 数据集中特定列的所有行

r - 必须提供原点 R 中随机日期生成错误

r - 在数据框中保留两个以上的值

r - 使用 R tidyverse 将 double 转换为整数

python - 在 Keras 中使用 imagedatagenerator 添加更多训练数据集