On 13-12-11 8:22 AM, PIKAL Petr wrote:
Hi

-----Original Message-----
From: r-help-boun...@r-project.org [mailto:r-help-bounces@r-
project.org] On Behalf Of Arnaud Michel
Sent: Wednesday, December 11, 2013 2:01 PM
To: R help
Subject: [R] To transform a vector of qualitatives values into a
dataframe of quantitatives values

Hi

  From the vector
X <- c(A, A, B, C, B, A, C)

What is A, B and C? If you expect them to be letters, they need to be in 
parentheses.

You mean "quotes", not parentheses.



I would like to build the Dataframe :
data.frame( A=c(1,1,0,0,0,1,0), B=c(0,0,1,0,1,0,0), C=c(0,0,0,1,0,0,1))

Any ideas ?

X <- sample(letters[1:3], 10, replace=T)
X
  [1] "c" "c" "a" "b" "c" "c" "a" "a" "a" "a"
data.frame(A=(X=="a"), B=(X=="b"), C=(X=="c"))

A simpler way is to use model.matrix.  With your example,

X <- factor(X)
m <- model.matrix( ~ X - 1)

(The names of the columns may need adjusting.)

Duncan Murdoch

______________________________________________
R-help@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.

Reply via email to