Hi,
You can try this:
dat1<-read.table(text="
Rad:0
Rad1:2
Rad3:3
",sep="",header=FALSE)
?Variable<-do.call(rbind,lapply(strsplit(as.character(dat1[[1]]),split=":"),`[`,1))
n11<-do.call(rbind,lapply(strsplit(as.character(dat1[[1]]),split=":"),function(x)
as.numeric(x[2])))
?n12<-2400-n11
?dat2<-data.frame(Variable,n11,n12)
?dat2
#? Variable n11? n12
#1????? Rad?? 0 2400
#2???? Rad1?? 2 2398
#3???? Rad3?? 3 2397
?str(dat2)
#'data.frame':??? 3 obs. of? 3 variables:
# $ Variable: Factor w/ 3 levels
"Rad","Rad1","Rad3": 1 2 3
# $ n11???? : num? 0 2 3
# $ n12???? : num? 2400 2398 2397
#or if you want it as a matrix:
?newmat<-do.call(rbind,strsplit(as.character(dat1[[1]]),split=":"))
?n12<-2400-as.numeric(newmat[,2])
?newmat2<-cbind(newmat,n12)
colnames(newmat2)[1:2]<-c("Variable","n11")
A.K.
----- Original Message -----
From: farnoosh sheikhi <farnoosh_81 at yahoo.com>
To: "r-help at R-project.org" <r-help at r-project.org>
Cc:
Sent: Monday, November 12, 2012 5:52 PM
Subject: [R] reshape
Hi,
I have a R output that looks as follow:
Rad:0
Rad1:2
Rad3:3
I want to make a new matrix that looks like : sample size is 2400
Variable ? ?n11 ?n12
Rad ? ? ? ? ? ?0 ? ? 2400-0=2400
Rad1 ? ? ? ? ?2 ? ? ? 2400-2
Rad3? 3 ? ? ?2400-3
?
Thanks a lot for your time and help:)
Best,Farnoosh Sheikhi
??? [[alternative HTML version deleted]]
______________________________________________
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.