This is what I refer to as "ab uno disce omnes"-thinking:
-- from one example all is revealed -- but this is the antithesis
of statistical thinking.

Here is an example function, others can probably do better.
On a vector of length 300 it takes .018 seconds on my aging
G5 ppc mac:

pears <- function(x){
        n <- length(x)
        A <- combos(n,2)
        rbind(x[A[1,]],x[A[2,]])
        }

This is actually a (shameless) advertisement for the function
combos in my quantreg package which uses a slightly fancy
algorithm to order the n choose p indices as, say produced
by base R's combn() in such a way that adjacent columns
differ by only one element.

PS.  Isn't there a better way to do the indexing on the last line?


url:    www.econ.uiuc.edu/~roger            Roger Koenker
email    [EMAIL PROTECTED]            Department of Economics
vox:     217-333-4558                University of Illinois
fax:       217-244-6678                Champaign, IL 61820


On Apr 30, 2008, at 3:15 PM, Zhandong Liu wrote:

I am switching from Matlab to R, but I found that R is 200 times slower than
matlab.

Since I am newbie to R, I must be missing some important programming tips.

Please help me out on this.

Here is the function:
## make the full pair-wise permutation of a vector
## input_fc=c(1,2,3);
## output_fc=(
1 1 1 2 2 2 3 3 3
1 2 3 1 2 3 1 2 3
);

grw_permute = function(input_fc){

fc_vector = input_fc

index = 1

k = length(fc_vector)

fc_matrix = matrix(0,2,k^2)

for(i in 1:k){

for(j in 1:k){

fc_matrix[index]  =  fc_vector[i]

fc_matrix[index+1]  =  fc_vector[j]

index = index+2

}

}

return(fc_matrix)

}

For an input vector of size 300. It took R 2.17 seconds to run.

But the same code in matlab only needs 0.01 seconds to run.

Am I missing sth in R.. Is there a away to optimize.  ???

Thanks

--
Zhandong Liu

Genomics and Computational Biology
University of Pennsylvania

616 BRB II/III, 421 Curie Boulevard
University of Pennsylvania School of Medicine
Philadelphia, PA 19104-6160

        [[alternative HTML version deleted]]

______________________________________________
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.

Reply via email to