[R] factor manipulation: edgelist to a matrix?
Veslot Jacques
jacques.veslot at cemagref.fr
Thu Dec 20 08:53:41 CET 2007
do.call(rbind,lapply(split(as.character(z[,2]),z[,1]),
function(x) c(x, rep(NA, max(table(z[,1]))-length(x)))))
Jacques VESLOT
CEMAGREF - UR Hydrobiologie
Route de Cézanne - CS 40061
13182 AIX-EN-PROVENCE Cedex 5, France
Tél + 0033 04 42 66 99 76
email jacques.veslot at cemagref.fr
>-----Message d'origine-----
>De : r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] De
>la part de Christopher Marcum
>Envoyé : jeudi 20 décembre 2007 08:33
>À : r-help at stat.math.ethz.ch
>Objet : [R] factor manipulation: edgelist to a matrix?
>
>Hello All,
>
>I have had considerable bad luck with attempting the following with for
>loops. Here is the problem:
>
>
># Suppose we have a data.frame with the following data, which can be
>considered a type of edgelist (for those with networks backgrounds):
>#
># V1 V2
># 1 A
># 1 A
># 1 B
># 2 A
># 3 C
># 3 A
># 3 C
># 3 B
>#
># I want the output of the function to produce a matrix, such that #each
>factor of V1 is a row, and each corresponding value at position k of V2 is
>the i,j^th element of the new matrix, with missing values otherwise. The
>desired output should be:
># [,1] [,2] [,3] [,4]
># [1,] A A B NA
># [2,] A NA NA NA
># [3,] C A C B
>
>I have explored the reshape package as well as the network package in this
>pursuit, with no luck.
>
>Thanks,
>Chris Marcum
>UCI Sociology
>
>______________________________________________
>R-help at r-project.org mailing list
>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.
More information about the R-help
mailing list