Hi Manisha,

Manisha Brahmachary wrote:
Hello,

I am trying to calculate the median of numbers across each row for the data
shown below  , with the condition that if the number is negative, that it
should be ignored and the median should be taken of only the positive
numbers.

For eg: data is in Column A,B,C. Column D and E demonstrates what I want to
get as answer

A

B

C

Median

median value

-13.6688115

-32.50914055

-50.54011892

all negative, so ignore

 NA

NA

-53.65656268

42.58599666

median C

42.58599666

33.30683089

18.93765489

-25.17024229

median A,B

26.12224289

The R script I have written is below( which  doesnot  do the job properly)

median.value<- matrix(nrow=nrow(data),ncol=1)

for(k in 1:nrow(data)){

median.value[k]<-median(data[which(data[k,]>0)])}

meds <- apply(data, 1, function(x) ifelse(median(x) < 0, median(x[x >= 0]), median(x)))

I would normally avoid variable names like data, as you are masking a function by the same name.

Best,

Jim



Can someone suggest me the correct R script to do what I have explained
above.

Thanks

Manisha


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

--
James W. MacDonald, M.S.
Biostatistician
Douglas Lab
University of Michigan
Department of Human Genetics
5912 Buhl
1241 E. Catherine St.
Ann Arbor MI 48109-5618
734-615-7826

______________________________________________
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