如何在行而不是列上应用dplyr的select(,starts_with())? [重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在行而不是列上应用dplyr的select(,starts_with())? [重复]相关的知识,希望对你有一定的参考价值。

我现在试图找出一种方法来选择在变量或特定字母中具有特定值的数据,尤其是使用与starts_with()相似的算法。

假设我有一个名为“school”的数据如下:

Name Math English
James 80   90
Tom   91   91
Shaun 99   71
Jack  92   91

在这里,选择(school,starts_with(“M”))只给我“数学”一栏。我想在行上应用它,例如命令'给我名字以“J”字母'开头的行,这将给我一个有两行的数据。

我尝试了移植数据并成功实现了我想要的东西,但这并不是我真正想要的。

我该怎么做这个工作?

答案

我相信dplyr的filter和substring命令的组合是最有效的:

library(dplyr)
filtered_df <- school %>% dplyr::filter(substr(Name,1,1) == "J")
另一答案

我认为这会奏效:

library(tidyverse)
df <- df %>% filter(str_detect(Name, "^J"))

以上是关于如何在行而不是列上应用dplyr的select(,starts_with())? [重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用dplyr在R中的所有列上应用iqr过滤器

在许多列上使用 dplyr + gsub

R dplyr如何通过列号而不是通过汇总的列名选择变量

Rails:如何在行而不是一列中显示图像

dplyr inner_join 与字符列上的 NA

根据dplyr :: select兼容的类/类型选择列