[R] Manipulation of data.frame into an array
Bert Gunter
bgunter@4567 @end|ng |rom gm@||@com
Thu May 24 17:04:30 CEST 2018
This is one of those instances where a less superficial knowledge of R's
technical details comes in really handy.
What you need to do is convert the data frame to a single (numeric) vector
for, e.g. a matrix() call. This can be easily done by noting that a data
frame is also a list and using do.call():
## imp is the data frame:
do.call(c,imp)
X11 X12 X13 X14 X15 X16 X17 X18 X19 X110 X111 X112 X113 X114
1 2 1 2 1 2 1 2 1 2 1 2 1 2
X115 X116 X21 X22 X23 X24 X25 X26 X27 X28 X29 X210 X211 X212
1 2 0 1 0 1 1 1 0 1 0 1 0 1
X213 X214 X215 X216 Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8 Y9 Y10
1 1 0 1 1 2 3 4 5 6 7 8 1 2
Y11 Y12 Y13 Y14 Y15 Y16
3 4 5 6 7 8
So, e.g. for a 3 column matrix:
> matrix(do.call(c,imp), ncol=3)
[,1] [,2] [,3]
[1,] 1 0 1
[2,] 2 1 2
[3,] 1 0 3
[4,] 2 1 4
[5,] 1 1 5
[6,] 2 1 6
[7,] 1 0 7
[8,] 2 1 8
[9,] 1 0 1
[10,] 2 1 2
[11,] 1 0 3
[12,] 2 1 4
[13,] 1 1 5
[14,] 2 1 6
[15,] 1 0 7
[16,] 2 1 8
Cheers,
Bert
Bert Gunter
"The trouble with having an open mind is that people keep coming along and
sticking things into it."
-- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )
On Thu, May 24, 2018 at 7:46 AM, Ioanna Ioannou <ii54250 using msn.com> wrote:
> Hello everyone,
>
>
> I want to transform a data.frame into an array (lets call it mydata),
> where: mydata[[1]] is the first imputed dataset...and for each mydata[[d]],
> the first p columns are covariates X, and the last one is the outcome Y.
>
>
> Lets assume a simple data.frame:
>
>
> Imputed = data.frame( X1 = c(1,2,1,2,1,2,1,2, 1,2,1,2,1,2,1,2),
>
> X2 = c(0,1,0,1,1,1,0,1,
> 0,1,0,1,1,1,0,1),
>
> Y =
> c(1,2,3,4,5,6,7,8,1,2,3,4,5,6,7,8))
>
> The first 8 have been obtained by the first imputation and the later 8 by
> the 2nd.
>
>
> Can you help me please?
>
>
> Best,
>
> ioanna
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/
> posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
[[alternative HTML version deleted]]
More information about the R-help
mailing list