# Re: [R] Weighted box or violin plots in Lattice?

From: Deepayan Sarkar <deepayan.sarkar_at_gmail.com>
Date: Mon, 09 May 2011 18:29:32 +0530

On Mon, May 9, 2011 at 5:42 PM, David Winsemius <dwinsemius_at_comcast.net> wrote:
>
> On May 9, 2011, at 12:35 AM, Deepayan Sarkar wrote:
>
>> On Mon, May 9, 2011 at 2:20 AM, Thomas Lumley <tlumley_at_uw.edu> wrote:
>>>
>>> On Mon, May 9, 2011 at 6:35 AM, Deepayan Sarkar
>>> <deepayan.sarkar_at_gmail.com> wrote:
>>>>
>>>> On Sat, May 7, 2011 at 1:55 AM, Raphael Mazor <raphaelm_at_sccwrp.org>
>>>> wrote:
>>>>>
>>>>> Is it possible to create weighted boxplots or violin plots in lattice?
>>>>>
>>>>> It seems that you can specify weights for panel.histogram() and
>>>>> panel.densityplot(), but not for panel.bwplot or panel.violin().
>>>>
>>>> Not for panel.histogram() either.
>>>>
>>>> It's not immediately obvious how you would get weighted boxplots.
>>>
>>> The way the survey world does it is to get weighted quantiles and work
>>> from them, as in survey:::svyboxplot().  The only tricky decision is
>>> what to do with outliers, since I haven't been able to think of any
>>> good way of indicating weights on them.
>>
>> So I guess with bwplot() one would have to write a version of
>> boxplot.stats() that uses weighted quantiles, and then write a
>> modified panel function.
>>
>> A crude approximation (if the weights don't vary too much) may be to
>> scale and round the weights to integers, and then repeat each data
>> point; e.g., newx <- rep(x, w), etc.
>
> You could do a bit better if you just substituted wtd.quantile from Hmisc
> with an x and weights argument for the fivenum call in boxplot.stats.

Thanks for that pointer. Incorporating weights into panel.bwplot() would still be a bit painful though (more so than panel.violin).

-Deepayan

>
> require(Hmisc)
>> ?wtd.quantile
>> fivenum(x=1:10)
> [1]  1.0  3.0  5.5  8.0 10.0
>> wtd.quantile(x=1:10)
>   0%   25%   50%   75%  100%
>  1.00  3.25  5.50  7.75 10.00
>> wtd.quantile( x = 1:10, weights = 1:10)
>  0%  25%  50%  75% 100%
>   1    5    7    9   10
>
>  (Most people think the hinges are at the 25th and 75th percentiles anyway.)
>
>
>>
>> -Deepayan
>>
>> ______________________________________________
>> R-help_at_r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> David Winsemius, MD
> West Hartford, CT
>
>

R-help_at_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. Received on Mon 09 May 2011 - 13:04:29 GMT

This quarter's messages: by month, or sorted: [ by date ] [ by thread ] [ by subject ] [ by author ]

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Mon 09 May 2011 - 13:10:06 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.