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

问题描述 投票:1回答:2

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

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

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

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

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

我该怎么做这个工作?

r select
2个回答
1
投票

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

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

0
投票

我认为这会奏效:

library(tidyverse)
df <- df %>% filter(str_detect(Name, "^J"))
© www.soinside.com 2019 - 2024. All rights reserved.