Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何防止矩阵成为R中的列表?_R_List_Matrix_Dataframe - Fatal编程技术网

如何防止矩阵成为R中的列表?

如何防止矩阵成为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[

假设我在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[,1] = unlist(DF[4,])

A
#     [,1] [,2] [,3]
#[1,]    1    0    0
#[2,]    2    0    0