使用tidyr'的额外列;团结起来`
在下面的示例中,为什么与使用tidyr'的额外列;团结起来`,r,tidyr,R,Tidyr,在下面的示例中,为什么与unite()输出相比,在unite()输出中有一个额外的列 library(tidyr) x1 <- data.frame(Sample=c("A", "B"), "1"=c("-", "y"), "2"=c("-", "z"), "3"=c("x", "a"), check.names=F) # Sample 1 2 3 # 1 A - - x # 2 B y z a 为什么这里还有一列(1列)?默
unite()
输出相比,在unite()
输出中有一个额外的列
library(tidyr)
x1 <- data.frame(Sample=c("A", "B"), "1"=c("-", "y"),
"2"=c("-", "z"), "3"=c("x", "a"), check.names=F)
# Sample 1 2 3
# 1 A - - x
# 2 B y z a
为什么这里还有一列(1
列)?默认情况下,删除unite\uz()
使用的列
注:
tidyr
0.5.1版两种用法的语法略有不同:
#unite(data, col, ..., sep = "_", remove = TRUE)
#unite_(data, col, from, sep = "_", remove = TRUE)
在unite_uu;help页面中,将From
选项定义为:“作为字符向量的现有列的名称。”
使用列名而不是提供所需结果的列号:
unite_(x1, "mix", names(x1[,2:ncol(x1)]), sep=",")
# Sample mix
#1 A -,-,x
#2 B y,z,a
我试着用“联合”这个词,但没用。不过,它与“粘贴”功能配合得非常好
df$new_col
#unite(data, col, ..., sep = "_", remove = TRUE)
#unite_(data, col, from, sep = "_", remove = TRUE)
unite_(x1, "mix", names(x1[,2:ncol(x1)]), sep=",")
# Sample mix
#1 A -,-,x
#2 B y,z,a