如何防止矩阵成为R中的列表?
假设我在R中有一个2乘3的零矩阵如何防止矩阵成为R中的列表?,r,list,matrix,dataframe,R,List,Matrix,Dataframe,假设我在R中有一个2乘3的零矩阵a=matrix(0,2,3),另一个数据框有两列,比如DF=data.frame(a=c(1,1,1),b=c(2,2,2,2))。我想给矩阵的一列分配一行数据帧,比如a[,1]=DF[4,]。问题是,这会将A转换为一个列表,并完全取消A的索引,可能是因为DF的行号和列名不同。如何解决这个问题?DF[4,]给出了一个单行数据帧,它是一个列表,而矩阵是一个原子向量,它只能保存一种数据类型。在将数据帧行分配给矩阵之前,需要取消列出数据帧行并将其转换为原子向量: A[
a=matrix(0,2,3)
,另一个数据框有两列,比如DF=data.frame(a=c(1,1,1),b=c(2,2,2,2))
。我想给矩阵的一列分配一行数据帧,比如a[,1]=DF[4,]
。问题是,这会将A
转换为一个列表,并完全取消A
的索引,可能是因为DF
的行号和列名不同。如何解决这个问题?DF[4,]
给出了一个单行数据帧,它是一个列表,而矩阵是一个原子向量,它只能保存一种数据类型。在将数据帧行分配给矩阵之前,需要取消列出
数据帧行并将其转换为原子向量:
A[,1] = unlist(DF[4,])
A
# [,1] [,2] [,3]
#[1,] 1 0 0
#[2,] 2 0 0