有2个向量,如下所示:
vec1<-c("x", "y")
vec2<-c(rep(0, 5))
我想创建一个data.frame对象,其中vec1成为data.frame DF的第1列DF和vec2也成为具有列名的行。在视觉上说话,可能是这样的。
vec1 1 2 3 4 5
x 0 0 0 0 0
y 0 0 0 0 0
我尝试了以下代码,但它将两个向量添加为列:
DF<-data.frame(vec1, vec2)
答案 0 :(得分:2)
您可以生成整个矩阵,然后使用data.frame
将其绑定到第一个矢量,而不是为行生成矢量。像这样:
mat <- matrix(0, nrow=2, ncol=5)
vec <- c("x","y")
data.frame(vec, mat)
给出了:
vec X1 X2 X3 X4 X5
1 x 0 0 0 0 0
2 y 0 0 0 0 0
答案 1 :(得分:1)
您可以使用rbind()
函数中的data.frame()
将vec2
值放入新数据框的两行中。
vec1<-c("x", "y")
vec2<-c(rep(0, 5))
data.frame(vec1,rbind(vec2,vec2))
vec1 X1 X2 X3 X4 X5
1 x 0 0 0 0 0
2 y 0 0 0 0 0