R 根据列中的值选择列
我使用的是R 根据列中的值选择列,r,tidyverse,tibble,R,Tidyverse,Tibble,我使用的是tidyverse,并且我知道filter方法允许筛选具有与特定条件匹配的值的所有行,如以下所示。它会筛选至少在on列中值介于0和3之间的所有行 filter_all(any_vars(. > 0 & .<3)) 我们可以使用选择和任何 library(dplyr) df1 %>% select_if(~ any(. > 4)) -输出 # B C #1 1 2 #2 5 1 #3 6 9 或者使用新版本中的where df1 %
tidyverse
,并且我知道filter
方法允许筛选具有与特定条件匹配的值的所有行,如以下所示。它会筛选至少在on列中值介于0和3之间的所有行
filter_all(any_vars(. > 0 & .<3))
我们可以使用
选择和任何
library(dplyr)
df1 %>%
select_if(~ any(. > 4))
-输出
# B C
#1 1 2
#2 5 1
#3 6 9
或者使用新版本中的where
df1 %>%
select(where(~ any(. > 4)))
# B C
#1 1 2
#2 5 1
#3 6 9
在base R
中,可以使用Filter
Filter(function(x) any(x > 4), df1)
或使用sapply
df1[sapply(df1, function(x) any(x > 4))]
或使用colSums
df1[colSums(df1 >4) > 0]
数据
df1我们可以使用select
和any
library(dplyr)
df1 %>%
select_if(~ any(. > 4))
-输出
# B C
#1 1 2
#2 5 1
#3 6 9
或者使用新版本中的where
df1 %>%
select(where(~ any(. > 4)))
# B C
#1 1 2
#2 5 1
#3 6 9
在base R
中,可以使用Filter
Filter(function(x) any(x > 4), df1)
或使用sapply
df1[sapply(df1, function(x) any(x > 4))]
或使用colSums
df1[colSums(df1 >4) > 0]
数据
df1