提取 R 数据框中除数字以外的所有列

问题描述

在我的项目中,我想从我的 R 数据框中提取除数字之外的所有列,作为

enter image description here

问题,我使用了相同的方法,只是将一个非门放入 is.numeric() R 函数中,但它不工作

这给出了所有数字数据,

x<-iris %>% dplyr::select(where(is.numeric))

但这并没有按预期工作,

x<-iris %>% dplyr::select(where(!is.numeric))

注意:最后,输出数据框应该只包含鸢尾花数据集中的物种列

解决方法

来自 purrr

tidyverse 包通过 purrr::keeppurrr::discard

完全满足您的需求
library(purrr)

x <- iris %>% keep(is.numeric)

通过这段代码,您在 keep 函数中设置了逻辑测试,只有通过测试的列才会保留。

要反转该操作并实现您的愿望,您也可以使用 discard 中的 purrr

x <- iris %>% discard(is.numeric)

您可以将 discard 视为 keep,但使用 !is.numeric

或者通过dplyr

x <- iris %>% select_if(~!is.numeric(.))

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...