首页 > 解决方案 > 如何在每个元素前面附加列号?

问题描述

这是一个简单的数据:

a <- c( "a" ,"a")
b <- c("b", "b")
df <- data.frame(a, b)

df[] <- paste0(1:2, unlist(df[,1:2]))

   a  b
1 1a 1b
2 2a 2b

我正在寻找的输出是:

   a  b
1 1a 2b
2 1a 2b

有什么有效的方法来做到这一点?

这行得通,但我相信有更好的方法。谢谢!

df2[] <- paste0(col, unlist(t(df2[,1:2])))
t(df2)

标签: rconcatenationpaste

解决方案


尝试这个:

df[] <- Map(paste0, seq_along(df), df)
df
##    a  b
## 1 1a 2b
## 2 1a 2b

推荐阅读