Summarizing levels for future commands
Thank you all! I got my program doing what I want it to - it will save me ALOT of time!! Suzanne
Douglas Bates <bates at stat.wisc.edu> wrote:
SuzieBlatt at netscape.net (Suzanne E. Blatt) writes:
Hi. This will hopefully be readily understood but if not, bear with me. I have to do a repeated analysis (in spatstat) and want to batch file it. For each of my 'runs' certain variables change. At present I am manually specifying these changes and want to automate it if possible. Ok, I am creating an object which is comprised of 'levels' that are 'characters'. Further in my program I need to select one of these 'levels' as the comparison to the others. The one I want to select is the most frequent and then compare it to the second most frequent. Is there anyway to get R to determine the most frequency of 'levels' in an object and then use a specific one in future functions? I couldn't find it in my search through the manual or the r-help archives. I hope what I am attempting to do is clear, let me know if it isn't.
I think I know what you want to do but I'm not sure. I believe you want to find the mode, or the "most popular" level. For example, in the following sample of size 50 from the values 1:10
samp = sample(1:10, 50, replace = TRUE) table(samp)
samp 1 2 3 4 5 6 7 8 9 10 5 3 7 3 4 2 8 9 3 6 the most popular value is 8. As you can see, the table function tells you the frequencies of the values. From that it is just a matter of extracting the index of the value with the maximum count and getting the label.
names(tbl)[match(max(tbl), tbl)]
[1] "8" Hope this helps.