Re: [R] Data Frame Transpose
On 06.01.2010 03:14, Noli Sicad wrote: Hi John Thanks for your reply. I think I was posting properly the problem. Here are the error, R script and console errors below. Thanks. Noli ~~~ The error: ~~ Error in data.frame(CROP_ID = x[1, 1], CROPTYPE = x[1, 2], name = colnames(x)[4:5], : subscript out of bounds Probably x does not have at least 5 columns ... Since we do not have the full data, we cannot see what exactly happens. Best, Uwe Ligges ~~~ I have a dynamic subscripts for the Period, as result of linear programming (LP) model run. How I generalise this line. Right now it has 3 index only. x01=y[,1], x02=y[,2], x03=y[,3]) This is sample the data. PERIOD 1 1 1 1 2 2 2 2 3 3 3 4 4 5 5 5 5 5 6 6 6 6 6 6 7 8 9 10 10 10 10 R script: harvest.dat- read.dbf('C:\\Down2\\R_forestmgt\\Carbon\\forest_cut_m.dbf') names(harvest.dat) = c(CROP_ID, CROPTYPE, PERIOD,CUT_AGE, AREA_CUT) # Transpose 5 columns fn- function(x) { y- t(x[,4:5]) data.frame( CROP_ID=x[1,1], CROPTYPE=x[1,2], name=colnames(x)[4:5], x01=y[,1], x02=y[,2], x03=y[,3]) } harvest.dat- do.call( rbind, lapply(split(harvest.dat,list(harvest.dat$CROP_ID,harvest.dat$CROPTYPE)),fn) ) write.csv(harvest.dat, forest_cut3.csv) ~ Scite console with r package ~ Rscript --vanilla --slave C:\Down2\R_forestmgt\Carbon\ForestCarbon_1_F_Clean7_transpose.R [1] C:/Down2/R_forestmgt/Carbon Loading required package: foreign Loading required package: sp Loading required package: methods Loading required package: lattice Warning messages: 1: package 'maptools' was built under R version 2.10.1 2: package 'foreign' was built under R version 2.10.1 3: package 'sp' was built under R version 2.10.1 Error in data.frame(CROP_ID = x[1, 1], CROPTYPE = x[1, 2], name = colnames(x)[4:5], : subscript out of bounds Calls: do.call - lapply - FUN - data.frame Execution halted Exit code: 1Time: 2.128 ~ __ 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. __ 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.
Re: [R] Data Frame Transpose
Well, if nothing else, you have missing comma. :) x01=y[,1]), x01=y[,1], x02=y[,2], x03=y[,3] -- fn - function(x) { y - t(x[,2]) data.frame( Croptype=x[1,1], Period =x[1,2], name=colnames(x)[2], x01=y[,1])x01=y[,1], x02=y[,2], x03=y[,3] } ---Problem here m - do.call( rbind, lapply(split(m,list(m$Period,m$Croptype)),fn) ) m - m[order(m$Period,m$Croptype),] I think I having a problem in here: x01=y[,1])x01=y[,1], x02=y[,2], x03=y[,3]. how to address with my data. I have variable Period. based on this http://www.mail-archive.com/r-h...@stat.math.ethz.ch/msg09264.html P_ID Croptype Period Ini_Age Area_Cut 83 SORI 1 31 528.2465512 84 SORI 1 32 74.55179899 85 SORI 1 33 72.45778618 86 SORI 1 34 139.5272947 82 SORI 2 28 1.711642933 83 SORI 2 29 2.50071 84 SORI 2 30 432.5139327 93 ORM 2 35 316.8422545 62 OTRM 3 30 64.60526438 82 SORI 3 27 26.93674606 3 SORM 3 35 223.3658345 82 SORI 4 26 2.50071 4 SORM 4 34 1008.643 5 OTRI 5 25 32.42603214 5 OTRM 5 29 65.9031344 5 SORM 5 32 223.1489321 5 SORM 5 33 72.59203041 5 SORM 5 35 222.8402746 6 OTRI 6 22 2.49851 6 OTRI 6 23 3.374626509 6 OTRI 6 24 96.13462257 6 OTRM 6 26 830.7463641 6 OTRM 6 27 731.6228643 6 OTRM 6 28 16.3519762 7 OTRM 7 26 1636.5693 8 OTRM 8 26 553.0050146 9 OTRM 9 26 894.414033 10 OTRM 10 24 38.72597099 10 OTRM 10 25 308.6452707 10 OTRM 10 26 786.1761969 10 SORM 10 31 235.8360136 To this. P_ID Croptype P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 83 SORI 31 84 SORI 32 85 SORI 33 86 SORI 34 82 SORI 28 83 SORI 29 84 SORI 30 93 SORM 35 62 OTRM 30 82 SORI 27 3 SORM 35 82 SORI 26 4 SORM 34 5 OTRI 25 5 OTRM 29 5 SORM 32 5 SORM 33 5 SORM 35 6 OTRI 22 6 OTRI 23 6 OTRI 24 6 OTRM 26 6 OTRM 27 6 OTRM 28 7 OTRM 26 8 OTRM 26 9 OTRM Thanks in advance. Noli __ 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. __ Yahoo! Canada Toolbar: Search from anywhere on the web, and bookmark your favourite sites. Download it now http://ca.toolbar.yahoo.com. __ 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.
Re: [R] Data Frame Transpose
Hi John Thanks for your reply. I think I was posting properly the problem. Here are the error, R script and console errors below. Thanks. Noli ~~~ The error: ~~ Error in data.frame(CROP_ID = x[1, 1], CROPTYPE = x[1, 2], name = colnames(x)[4:5], : subscript out of bounds ~~~ I have a dynamic subscripts for the Period, as result of linear programming (LP) model run. How I generalise this line. Right now it has 3 index only. x01=y[,1], x02=y[,2], x03=y[,3]) This is sample the data. PERIOD 1 1 1 1 2 2 2 2 3 3 3 4 4 5 5 5 5 5 6 6 6 6 6 6 7 8 9 10 10 10 10 R script: harvest.dat - read.dbf('C:\\Down2\\R_forestmgt\\Carbon\\forest_cut_m.dbf') names(harvest.dat) = c(CROP_ID, CROPTYPE, PERIOD,CUT_AGE, AREA_CUT) # Transpose 5 columns fn - function(x) { y - t(x[,4:5]) data.frame( CROP_ID=x[1,1], CROPTYPE=x[1,2], name=colnames(x)[4:5], x01=y[,1], x02=y[,2], x03=y[,3]) } harvest.dat - do.call( rbind, lapply(split(harvest.dat,list(harvest.dat$CROP_ID,harvest.dat$CROPTYPE)),fn) ) write.csv(harvest.dat, forest_cut3.csv) ~ Scite console with r package ~ Rscript --vanilla --slave C:\Down2\R_forestmgt\Carbon\ForestCarbon_1_F_Clean7_transpose.R [1] C:/Down2/R_forestmgt/Carbon Loading required package: foreign Loading required package: sp Loading required package: methods Loading required package: lattice Warning messages: 1: package 'maptools' was built under R version 2.10.1 2: package 'foreign' was built under R version 2.10.1 3: package 'sp' was built under R version 2.10.1 Error in data.frame(CROP_ID = x[1, 1], CROPTYPE = x[1, 2], name = colnames(x)[4:5], : subscript out of bounds Calls: do.call - lapply - FUN - data.frame Execution halted Exit code: 1Time: 2.128 ~ __ 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.