maybe inc.freqy <- sapply(unit.dist, function(x) rowSums( test <= x))
suffices? b On Mon, Apr 5, 2010 at 5:31 PM, pinusan <anh...@msu.edu> wrote: > > Dear R users, > > I would like to transform the following "for loop" from R-code to C-code > because it takes really long time to have inc.freqy table. > Unfortunately, I do not have experience to write C code. > Plese, give me some example or advise to transfrom the R to C code. > > I have attached the code and some result that I made in R. > > Have a nice day. > > Hong Su > > # Data import > ct10_pt1_neartree<-read.table("~/Desktop/hongsu/clustered_pattern/ct10/ct10/ct10_58ft_pt1_neartree", > header=TRUE, sep=",", na.strings="NA", dec=".", strip.white=TRUE) > test<-round(ct10_pt1_neartree, digits=1) > > # randomly select 2 data set for test > test<-as.matrix(test[sample(2,replace=T),]) > test > > # Selected Data >> test > Rpt1 Rpt2 Rpt3 Rpt4 Rpt5 Rpt6 Rpt7 Rpt8 Rpt9 Rpt10 Rpt11 Rpt12 Rpt13 > Trial1 19.3 9.1 20.7 3.0 21.4 14.5 8.2 10.5 7.4 11.0 6.9 9.5 15.4 > Trial2 24.5 22.2 4.9 7.8 20.9 12.5 18.3 6.5 7.6 2.2 8.9 19.6 21.1 > Rpt14 Rpt15 Rpt16 Rpt17 Rpt18 Rpt19 Rpt20 Rpt21 Rpt22 Rpt23 Rpt24 > Rpt25 > Trial1 49.2 39.9 18.3 14.8 29.9 27.3 20.2 14.6 9.5 14.2 7.5 > 16.0 > Trial2 38.6 12.8 1.5 12.5 4.6 10.6 14.5 12.5 5.8 14.0 55.9 > 4.8 > Rpt26 Rpt27 Rpt28 Rpt29 Rpt30 Rpt31 Rpt32 > Trial1 19.7 12.9 5.3 3.1 11.7 19.0 21.2 > Trial2 0.8 11.3 4.7 12.5 5.5 5.9 5.2 > > # N of columns in test > n.center.point<-ncol(test) > > # Maximum number in test > max.dist<-max(test) > > # make distance > unit.dist <- seq(0, round(max.dist, digit=1),0.1) # change file > > > # for loop (need to change C) > inc.freqy<-matrix(0,nrow(test), length(unit.dist)) > > for(i in 1:nrow(test)){ > for (j in 1:length(unit.dist)){ > inc.freqy[i,j]<-length(test[i,][test[i,]<=unit.dist[j]]) > } > } > > inc.freqy[,1:30] > > # partial result for inc.freqy >> inc.freqy[,1:30] > [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] > [,14] > [1,] 0 0 0 0 0 0 0 0 0 0 0 0 0 > 0 > [2,] 0 0 0 0 0 0 0 0 1 1 1 1 1 > 1 > [,15] [,16] [,17] [,18] [,19] [,20] [,21] [,22] [,23] [,24] [,25] [,26] > [1,] 0 0 0 0 0 0 0 0 0 0 0 0 > [2,] 1 2 2 2 2 2 2 2 3 3 3 3 > [,27] [,28] [,29] [,30] > [1,] 0 0 0 0 > [2,] 3 3 3 3 > > -- > View this message in context: > http://n4.nabble.com/Help-transfrom-R-to-C-tp1751764p1751764.html > Sent from the R help mailing list archive at Nabble.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. > ______________________________________________ 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.