[R] how to turn column into column names and fill it with values

Ana Marija @okov|c@@n@m@r|j@ @end|ng |rom gm@||@com
Tue Sep 29 18:18:49 CEST 2020


Hello,

I have a data frame like this:

> head(mc)
      FID  IID   PLATE
1 fam0110 G110 4RWG569
2 fam0113 G113  cherry
3 fam0114 G114  cherry
4 fam0117 G117 4RWG569
5 fam0118 G118 5XAV049
6 fam0119 G119  cherry
...
> dim(mc)
[1] 1625    4
> length(unique(mc$PLATE))
[1] 34

I am trying to make a new data frame which would look like this:
      FID  IID   PLATE   4RWG569  cherry 5XAV049 ...
1 fam0110 G110 4RWG569  2  1  1
2 fam0113 G113  cherry   1  2  1
3 fam0114 G114  cherry   1  2  1
4 fam0117 G117 4RWG569  2  1  1
5 fam0118 G118 5XAV049   2  1  1
6 fam0119 G119  cherry   1  2  1
...

so the new data frame would have an additional 34 columns (for every
unique mc$PLATE) and if in the row of PLATE column the value is ==to
that column name I would have 2 otherwise 1

I tried to do this with:

library(reshape2)
>  m2=dcast(mc, IID ~ PLATE)
Using PLATE as value column: use value.var to override.

Please advise,
Ana



More information about the R-help mailing list