[R] How to create a matrix from a list without a for loop

Laurent Rhelp L@urentRHe|p @end|ng |rom |ree@|r
Fri Jul 9 21:37:48 CEST 2021


Very effective solution, I hope I remember that for the nex time.
Thank you


Le 09/07/2021 à 19:50, David Winsemius a écrit :
>
> On 7/9/21 10:40 AM, Laurent Rhelp wrote:
>> Dear R-Help-list,
>>
>>   I have a list init_l containing 16 dataframes and I want to create 
>> a matrix 4 x 4 from this list with a dataframe in every cell of the 
>> matrix. I succeeded to do that but my loop is very uggly (cf. below). 
>> Could somebody help me to write nice R code to do this loop ?
>>
>> Thank you very much
>>
>> Laurent
>>
>>
>> ##
>> ## mock data, 16 dataframes in a list
>> ##
>> init_l <- lapply( seq(1,16) , function(x) {
>>   data.frame( V1 = rnorm(3),
>>               V2 = rnorm(3),
>>               V3 = rnorm(3)
>>             )
>> })
>>
>> ##
>> ## lists matrix creation with n = 4 columns and n = 4 rows
>> ##
>> n <- 4
>
>
>
> Just assign a dimension attribute and you will have your two 
> dimensional structure
>
>
> > dim(init_l) <- c(n,n)
> > init_l[ 2,2]
> [[1]]
>           V1         V2         V3
> 1 -1.4103259  1.9214184 -0.1590919
> 2  0.1899490  0.3842191  2.4502078
> 3 -0.4282764 -0.9992190  1.5384344
>
> > is.matrix(init_l)
> [1] TRUE
>


-- 
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel antivirus Avast.
https://www.avast.com/antivirus



More information about the R-help mailing list