这是dplyr的解决方案:
library(dplyr)
library(openxlsx)
data %>%
mutate(Word = case_when(Word == "pata" ~ "/t/",
Word == "pada" ~ "/d/",
Word == "paca" ~ "/c/")) %>%
write.csv(., "new_variable_names.csv")
这是使用lapply 和gsub 的base R 解决方案:
data <- data.frame(lapply(data, function(x) gsub("pata", "/t/", x)))
data <- data.frame(lapply(data, function(x) gsub("pada", "/d/", x)))
data <- data.frame(lapply(data, function(x) gsub("paca", "/c/", x)))
write.csv(data, "new_variables.csv")
无论哪种方式都给我们:
Word Repetition Value
1 /t/ 1 233
2 /t/ 2 433
3 /t/ 3 552
4 /d/ 1 234
5 /d/ 2 567
6 /d/ 3 436
7 /c/ 1 765
8 /c/ 2 231
9 /c/ 3 567
数据:
structure(list(Word = c("pata", "pata", "pata", "pada", "pada",
"pada", "paca", "paca", "paca"), Repetition = c(1, 2, 3, 1, 2,
3, 1, 2, 3), Value = c(233, 433, 552, 234, 567, 436, 765, 231,
567)), class = "data.frame", row.names = c(NA, -9L))