[R] identify extremes positions of values into matrix
Francisco Zagmutt
gerifalte28 at hotmail.com
Fri Nov 3 20:21:14 CET 2006
I am glad to help ;-)
Cheers,
Francisco
Milton Cezar Ribeiro wrote:
> Francisco,
> Thank you so much. It´s more than I need.
> You help was of great value.
>
> Kind regards,
>
> Miltinho
>
> "Francisco J. Zagmutt" <gerifalte28 at hotmail.com> escreveu:
> Oi Milton,
>
> Is this what you are after?
>
> x=read.table("miltondat.txt")
>> x
> V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
> 1 0 0 0 0 0 0 0 0 0 0
> 2 0 0 0 0 0 1 1 1 0 0
> 3 0 0 0 0 0 1 1 1 0 0
> 4 0 0 0 0 0 0 0 0 0 0
> 5 0 0 2 2 2 0 0 0 0 0
> 6 0 0 0 2 2 2 0 0 0 0
> 7 0 0 2 2 2 2 2 2 0 0
> 8 0 0 0 0 0 0 0 0 0 0
>
> idx=which(x==2,arr.ind=T) #Index of observations with values == 2 . Notice
> the use of arr.ind=t to get the rows and columns of the observations
>
>> idx
> row col
> 5 5 3
> 7 7 3
> 5 5 4
> 6 6 4
> 7 7 4
> 5 5 5
> 6 6 5
> 7 7 5
> 6 6 6
> 7 7 6
> 7 7 7
> 7 7 8
>
>> range(idx[,"row"]) #gives you the min and max of the rows with x==2
> [1] 5 7
>> range(idx[,"col"])#gives you the min and max of the columns with x==2
> [1] 3 8
>
>
> You can refine this and wrap it in a function to make reports in a more
> suitable form
>
> Regards
>
> Francisco
>
> Dr. Francisco J. Zagmutt
> College of Veterinary Medicine and Biomedical Sciences
> Colorado State University
>
>
>
>
>> From: Milton Cezar Ribeiro
>> To: r-help at stat.math.ethz.ch
>> Subject: [R] identify extremes positions of values into matrix
>> Date: Fri, 3 Nov 2006 11:25:32 -0300 (ART)
>>
>> Hi R-friends around world!
>> I have a matrix that looks like bellow one.
>> Each cell are filled with values 0, 1 or 2.
>> In fact I have a lot of 512x512 matrices, with
>> values varying from 0 to 999.
>> I need to retrieve the left and right columns
>> and the top and botton lines of the matrix
>> where occours for example the value 2.
>> Column and row labels are included at the example.
>>
>> 1234567890
>> 1 0000000000
>> 2 0000011100
>> 3 0000011100
>> 4 0000000000
>> 5 0022200000
>> 6 0002220000
>> 7 0022222200
>> 8 0000000000
>>
>> At this example, the right answer are:
>> collumns 3 and 8
>> lines 5 and 7
>> Any idea of how can I solve this?
>> Kind regards,
>> Miltinho
>>
>>
>> ---------------------------------
>>
>> Música para ver e ouvir: You're Beautiful, do James Blunt
>> [[alternative HTML version deleted]]
>>
>
>
>> ______________________________________________
>> R-help at stat.math.ethz.ch 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.
>
> _________________________________________________________________
> Try Search Survival Kits: Fix up your home and better handle your cash with
> Live Search!
> http://imagine-windowslive.com/search/kits/default.aspx?kit=improve&locale=en-US&source=hmtagline
>
>
>
>
> ---------------------------------
>
> Música para ver e ouvir: You're Beautiful, do James Blunt
> [[alternative HTML version deleted]]
>
>
>
> ------------------------------------------------------------------------
>
> ______________________________________________
> R-help at stat.math.ethz.ch 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.
More information about the R-help
mailing list