Hello,

You can write your own function, allowing for a condition argument.


rowMeansCond <- function(x, cond = ">", na.rm= FALSE){
        rowm <- function(x, cond = ">", na.rm = FALSE){
                f <- function(x){
                        eval(parse(text = paste("x", cond, "0")))
                }
                if(na.rm) x <- x[!is.na(x)]
                i <- f(x)
                if(any(i)) mean(x[i]) else NA
        }
        apply(x, 1, rowm, cond, na.rm)
}

x1 <- c(1, 1, -1, -1)
x2 <- -2:1
rowMeansCond(cbind(x1, x2))  # note the NA, no values are positive
rowMeansCond(cbind(x1, x2), cond = "<")


Hope this helps,

Rui Barradas

Em 11-06-2013 13:18, felice escreveu:
hello,

when i use the function rowMeans, which is sum/n, can i divide it in 2
parts, -> Sum(just positive values)/n and Sum(just negative values)/n. i
need both for my regression but dont know how to do it.

for example we have the matrix

1  1  -1  -1   -> rowMeans([1:3 , 2])  just positive -> 1
1 -1 -1  -2
1/2  here not 0 because we dont use the -1
1 1   1   1
1


thanks for helping



--
View this message in context: 
http://r.789695.n4.nabble.com/R-vector-tp4669233.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.

Reply via email to