r - 在 R 中检查数据框中的值
问题描述
以下是我的r
代码。我正在尝试检查真实值a = 10
是否包含在数据框中。如果它包含在数据帧中,那么我需要计算该数据帧的长度,否则我想分配长度0
。
假设我正在检查的值是10
k1 = c(1,2,3,5,6)
k2 = c(10,12,13,15,16,18)
例如,对于k1
集合,我想获得长度0
,而k2
长度必须是6
我尝试使用以下代码来完成这项工作
library(tidyverse)
map_lgl(k, `%in%`, x = 10) %>% length
为什么它不适用于k1
数据集?
解决方案
你可以用一个简单的ifelse
语句来做到这一点——不需要其他任何东西。
a <- 10
ifelse(a %in% k2, length(k2), 0)
[1] 0
您可以包装一个函数并将不同的集合输入:
my_func <- function(x){
ifelse(a %in% x, length(x), 0)
}
my_func(k2)
[1] 6
推荐阅读
- javascript - 以日期为键对地图进行排序(javascript)
- powershell - Powershell 脚本参数作为变量名
- amazon-web-services - 是否可以更改 AWS 上现有 EC2 实例的存储?
- wpf - 为什么我的 UserControl 中的 TwoWay 绑定只能使用 OneWay?
- reactjs - 如何添加订阅以访问本机应用程序中的页面
- java - Execution Timed Out(1600ms) 如何优化这个 codewars kata 以更快地运行?
- xaml - 如何在此布局中创建 ScrollView?
- oracle - PLS-00103:在期待以下之一时遇到符号“IS”::=。( @ % ; 非空范围默认字符
- amazon-web-services - Control role permission in AWS
- html - 粘性位置和元素与另一个元素重叠的问题