r - 自动在表格条目前添加文本
问题描述
使用 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])
推荐阅读
- excel - 检测鼠标何时在单元格中按下
- java - Spring:如何处理 Spring 容器中的原型 bean,对象图的某个子部分的单例范围?
- php - 存储时如何正确加载定义或序列化 PHP 类的实例/对象?
- javascript - onMouseDown/onClick 事件里面
- javascript - 重复直到达到精确值
- c++ - 当我在二维数组参数中使用不带括号的引用运算符时,为什么会出现错误“声明为引用数组”?
- r - 匹配。使用 MatchIt 和 Matching 进行数据模拟和估计。如何检索真实模型?
- hazelcast - 优雅关闭 kafka 消费者
- r - 使用循环创建多个数据框和列
- html - text align:center 在宽度和显示方面表现不佳:inline-block