自动在 table 个条目前添加文本
Automatically adding text in front of table entries
我使用 R 创建了一些伪数据,如下所示:
file <-data.frame(
"id" = c("1", "2", "3","4", "5","6", "7", "8", "9", "10"),
"var_1" = c("A", "B", "B","A", "B","B", "B", "A", "A", "B"),
"var_2" = c("AA", "BB", "BB","AA", "BB","BB", "BB", "AA", "AA", "BB")
)
有没有办法在每个单元格条目前添加一些文本,就像我在下面所做的那样(手动)?
f <-data.frame(
"id" = c("1", "2", "3","4", "5","6", "7", "8", "9", "10"),
"var_1" = c("var_1_A", "var_1_B", "var_1_B","var_1_A", "var_1_B","var_1_B", "var_1_B", "var_1_A", "var_1_A", "var_1_B"),
"var_2" = c("var_2_AA", "var_2_BB", "var_2_BB","var_2_AA", "var_2_BB","var_2_BB", "var_2_BB", "var_2_AA", "var_2_AA", "var_2_BB")
)
有没有办法自动执行此操作?
谢谢
您可以使用:
library(dplyr)
file %>% mutate(across(starts_with('var'), ~paste(cur_column(), ., sep = '_')))
# id var_1 var_2
#1 1 var_1_A var_2_AA
#2 2 var_1_B var_2_BB
#3 3 var_1_B var_2_BB
#4 4 var_1_A var_2_AA
#5 5 var_1_B var_2_BB
#6 6 var_1_B var_2_BB
#7 7 var_1_B var_2_BB
#8 8 var_1_A var_2_AA
#9 9 var_1_A var_2_AA
#10 10 var_1_B var_2_BB
或以 R 为基数:
file[-1] <- Map(function(x, y) paste(x, y, sep = '_'), file[-1], names(file)[-1])
我们可以使用str_c
library(dplyr)
library(stringr)
file %>%
mutate(across(starts_with('var'), ~ str_c(cur_column(), ., sep = '_')))
我使用 R 创建了一些伪数据,如下所示:
file <-data.frame(
"id" = c("1", "2", "3","4", "5","6", "7", "8", "9", "10"),
"var_1" = c("A", "B", "B","A", "B","B", "B", "A", "A", "B"),
"var_2" = c("AA", "BB", "BB","AA", "BB","BB", "BB", "AA", "AA", "BB")
)
有没有办法在每个单元格条目前添加一些文本,就像我在下面所做的那样(手动)?
f <-data.frame(
"id" = c("1", "2", "3","4", "5","6", "7", "8", "9", "10"),
"var_1" = c("var_1_A", "var_1_B", "var_1_B","var_1_A", "var_1_B","var_1_B", "var_1_B", "var_1_A", "var_1_A", "var_1_B"),
"var_2" = c("var_2_AA", "var_2_BB", "var_2_BB","var_2_AA", "var_2_BB","var_2_BB", "var_2_BB", "var_2_AA", "var_2_AA", "var_2_BB")
)
有没有办法自动执行此操作?
谢谢
您可以使用:
library(dplyr)
file %>% mutate(across(starts_with('var'), ~paste(cur_column(), ., sep = '_')))
# id var_1 var_2
#1 1 var_1_A var_2_AA
#2 2 var_1_B var_2_BB
#3 3 var_1_B var_2_BB
#4 4 var_1_A var_2_AA
#5 5 var_1_B var_2_BB
#6 6 var_1_B var_2_BB
#7 7 var_1_B var_2_BB
#8 8 var_1_A var_2_AA
#9 9 var_1_A var_2_AA
#10 10 var_1_B var_2_BB
或以 R 为基数:
file[-1] <- Map(function(x, y) paste(x, y, sep = '_'), file[-1], names(file)[-1])
我们可以使用str_c
library(dplyr)
library(stringr)
file %>%
mutate(across(starts_with('var'), ~ str_c(cur_column(), ., sep = '_')))