【发布时间】:2021-05-12 14:37:54
【问题描述】:
在一些数据争论中遇到了困难。我试图在书目数据框中只保留某些作者的机构隶属关系,并用 NA 替换许多不需要的隶属关系。我需要跨多个列执行此操作,因为论文有多个作者(最多 68 位)。
可重现的代码:
so <- data.frame(inst_1=c("FC1","FC2","Uni1","lab3","lab2"),
inst_2=c("FC1","FC5","college4","laboratory1","lab2"),
inst_3=c("FC2","FC2","University2","lab5","lab5"),
inst_4=c("FC3","FC6","dept2","lab3.2","lab1"),
inst_5=c("FC1","FC2","Uni3","labB","lab5"))
示例数据框:
inst_1 inst_2 inst_3 inst_4 inst_5
1 FC1 FC1 FC2 FC3 FC1
2 FC2 FC5 FC2 FC6 FC2
3 Uni1 college4 University2 dept2 Uni3
4 lab3 laboratory1 lab5 lab3.2 labB
5 lab2 lab2 lab5 lab1 lab5
我想选择具有前缀“inst”的每一列(可能使用 str_detect),并在这些选择的列中替换任何不包含字符“FC”的机构和 NA。这是必要的,因为此工作表有 68 个机构列(inst 前缀)和数百行(个别科学文章)。我不能只选择用 NA 替换哪些机构,因为有数百个不同的机构,而我只想保留包含“FC”的机构。
【问题讨论】:
标签: r if-statement dplyr data-wrangling