R 如何在数据帧的同一行中插入3个向量?

R 如何在数据帧的同一行中插入3个向量?,r,vector,dataframe,R,Vector,Dataframe,我是R的新手,有个问题。我创建了一个“空的”data.frame,因为在R中我不能这样做,我创建了一个向量来实现它,我将在完成脚本时删除它 x <- c("aa", 0, 0, 0, "zz") #Vector to fulfill the dataframe (it will be deleted at the end of the script) df <<- rbind(x) #Creating a matrix. See: class(df) df

我是R的新手,有个问题。我创建了一个“空的”data.frame,因为在R中我不能这样做,我创建了一个向量来实现它,我将在完成脚本时删除它

x <- c("aa", 0, 0, 0, "zz") #Vector to fulfill the dataframe (it will be deleted at the end of the script)       
df <<- rbind(x) #Creating a matrix. See: class(df)    
df <<- data.frame(df) #Converting the matrix into a data.frame 
我试过:
df也许,你可以这么做

x <- c("aa", 0, 0, 0, "zz") 
a <- c("bb")       
b <- c(2, 3, 4)    
c <- c("yy")   
y <- c(a, b, c)
rbind(r1 = x,r2 =  y)


#   [,1] [,2] [,3] [,4] [,5]
#r1 "aa" "0"  "0"  "0"  "zz"
#r2 "bb" "2"  "3"  "4"  "yy"
也许,你可以这样做

x <- c("aa", 0, 0, 0, "zz") 
a <- c("bb")       
b <- c(2, 3, 4)    
c <- c("yy")   
y <- c(a, b, c)
rbind(r1 = x,r2 =  y)


#   [,1] [,2] [,3] [,4] [,5]
#r1 "aa" "0"  "0"  "0"  "zz"
#r2 "bb" "2"  "3"  "4"  "yy"
根据所需输出,您可以尝试以下方法: 并猜测您更想要的输出: 根据所需输出,您可以尝试以下方法: 并猜测您更想要的输出:
什么是期望输出?请阅读以下内容:什么是期望输出?请阅读以下内容:
x <- c("aa", 0, 0, 0, "zz") 
a <- c("bb")       
b <- c(2, 3, 4)    
c <- c("yy")   
y <- c(a, b, c)
rbind(r1 = x,r2 =  y)


#   [,1] [,2] [,3] [,4] [,5]
#r1 "aa" "0"  "0"  "0"  "zz"
#r2 "bb" "2"  "3"  "4"  "yy"
data.frame(rbind(r1 = x,r2 =  y))

#   X1 X2 X3 X4 X5
#r1 aa  0  0  0 zz
#r2 bb  2  3  4 yy
library(dplyr)  # Gives %>%
dataF <- data.frame(X1 = "aa",
                    X2 = 0,
                    X3 = 0,
                    X4 = 0,
                    X5 = "zz",
                    stringsAsFactors = FALSE)

a <- c("bb")       
b <- c(2, 3, 4)    
c <- c("yy")

# setNames to simply use rbind()
newrow <- data.frame(a, t(b), c, stringsAsFactors = FALSE) %>% setNames(names(dataF))

rbind(dataF, newrow)
'data.frame':   2 obs. of  5 variables:
 $ X1: chr  "aa" "bb"
 $ X2: num  0 2
 $ X3: num  0 3
 $ X4: num  0 4
 $ X5: chr  "zz" "yy"
library(dplyr)
dataF <- data.frame(X1 = character(),
                    X2 = numeric(),
                    X3 = numeric(),
                    X4 = numeric(),
                    X5 = character(),
                    stringsAsFactors = FALSE)

a <- c("bb")       
b <- c(2, 3, 4)    
c <- c("yy")

newrow <- data.frame(a, t(b), c, stringsAsFactors = FALSE) %>% setNames(names(dataF))

rbind(dataF, newrow)
'data.frame':   1 obs. of  5 variables:
 $ X1: chr "bb"
 $ X2: num 2
 $ X3: num 3
 $ X4: num 4
 $ X5: chr "yy"