R 如何在循环中获取多个矩阵并自动分配它们?
我有一个包含15个不同组的列表,我想在for循环中将它们转换成15个不同的矩阵。然而,我无法让它工作R 如何在循环中获取多个矩阵并自动分配它们?,r,loops,matrix,R,Loops,Matrix,我有一个包含15个不同组的列表,我想在for循环中将它们转换成15个不同的矩阵。然而,我无法让它工作 a=split(datalist,as.factor(datalist$groups)) 当我这样做时,我可以通过键入[1]a[2]等来可视化不同的组。我的每个a组件(a[1],a[2]等)都在一个列表中,大小为3x24,它们被视为非数字。我在使用split命令后得到这些组件。但我需要它们作为数字,这就是为什么我认为我需要将它们转换成矩阵,为此,我尝试做一个循环,将这些组件转换成15个不同的矩
a=split(datalist,as.factor(datalist$groups))
当我这样做时,我可以通过键入[1]a[2]等来可视化不同的组。我的每个a组件(a[1],a[2]等)都在一个列表中,大小为3x24,它们被视为非数字。我在使用split命令后得到这些组件。但我需要它们作为数字,这就是为什么我认为我需要将它们转换成矩阵,为此,我尝试做一个循环,将这些组件转换成15个不同的矩阵,大小为3x24
对于每个i数(从1到15),我可以使用
matrix(unlist(a[i]), ncol=columnlength,byrow=rowlength)
这个命令
然后我开始循环
for (i in 1:15) {
b[i]=matrix(unlist(a[i]), ncol=24,byrow=3)
}
这是错误的,因为我使用的b[I]只指定了矩阵的一个单位。但是我不知道用什么来代替b[I]。我不明白你的问题
a=split(datalist,as.factor(datalist$groups))
“a”结果是向量或矩阵| data.frame
然后你把“b”矩阵装箱,3x24
你想把每个“a”元素都放到“b”矩阵中,对吗
你的“a”有24个元素,每个元素有3个?(像矩阵…)
b我不明白你的问题
a=split(datalist,as.factor(datalist$groups))
“a”结果是向量或矩阵| data.frame
然后你把“b”矩阵装箱,3x24
你想把每个“a”元素都放到“b”矩阵中,对吗
你的“a”有24个元素,每个元素有3个?(像矩阵…)
b以下是我使用mtcars
首先,像你已经做的那样分开
split.df <- split(mtcars, mtcars$cyl)
使用将分配给以下是我使用mtcars
首先,像你已经做的那样分开
split.df <- split(mtcars, mtcars$cyl)
使用将分配给
for (x in 1:length(newnames)) {
assign(newnames[x], as.matrix(split.df[[x]]))
}