2013-11-22 103 views
0

这是我的数据框的姓名。数据转换/粘贴R

colnames(new)[3:ncol(new)] 
[1] "tag12" "tag13" "tag14" "tag15" "tag16" "tag17" "tag18" "tag22" "tag23" 
[10] "tag24" 

如何创建类似

new.1 < - tag12 + tag13 + tag14 ......

这是我第一次尝试。

for (i in 3:ncol(all.1)) 
new.1<-as.data.frame(paste(colnames(all.1)[c(i-1)],colnames(all.1)[c(i)],sep="+")) 

     paste(colnames(all.1)[c(i - 1)], colnames(all.1)[c(i)], sep = "+") 
1                tag3+tag4 
+0

此博客帖子可能会有帮助:http://trinkerrstuff.wordpress.com/2013/09/15/paste-paste0-and-sprintf-2/ –

回答

1

为什么不干脆:

new.1 <- paste0(colnames(new)[3:ncol(new)], collapse="+") 

如果你举一个载体pastepaste0你得到一个向量回来了尽可能多的项目在原来的载体。如果你想连接它们之间的“+”符号的项目,你需要我们collapse

+0

我在想别的事情。正在循环做。谢谢 –

+0

这是一种矢量化。放入多项目矢量并获取单个元素。 –