[R] Bug in by() function which works for some FUN argument and does not work for others
Jim Lemon
drjimlemon at gmail.com
Fri Apr 15 01:08:28 CEST 2016
Hi Dr Singh,
The object mtcars is a data frame and the mean is not defined for a
data frame. If you try it on a component of the data frame for which
mean is defined:
by(mtcars$mpg,mtcars$am,mean)
mtcars$am: 0
[1] 17.14737
------------------------------------------------------------
mtcars$am: 1
[1] 24.39231
Jim
On Fri, Apr 15, 2016 at 6:14 AM, Akhilesh Singh
<akhileshsingh.igkv at gmail.com> wrote:
> Dear Sirs,
>
> I am Professor at Indira Gandhi Krishi Vishwavidyalaya, Raipur,
> Chhattisgarh, India.
>
> While taking classes, I found the *by() *function producing following error
> when I use FUN=mean or median and some other functions, however,
> FUN=summary works.
>
> Given below is the output of the example I used on a built-in dataset
> "mtcars", along with error message reproduced herewith:
>
>> by(data=mtcars, INDICES=list(mtcars$am), FUN=mean)
> : 0
> [1] NA
> ------------------------------------------------------------
> : 1
> [1] NA
> Warning messages:
> 1: In mean.default(data[x, , drop = FALSE], ...) :
> argument is not numeric or logical: returning NA
> 2: In mean.default(data[x, , drop = FALSE], ...) :
> argument is not numeric or logical: returning NA
>
> However, the same by() function works for FUN=summary, given below is the
> output:
>
>> by(data=mtcars, INDICES=list(mtcars$am), FUN=summary)
> : 0
> mpg cyl disp hp
> Min. :10.40 Min. :4.000 Min. :120.1 Min. : 62.0
> 1st Qu.:14.95 1st Qu.:6.000 1st Qu.:196.3 1st Qu.:116.5
> Median :17.30 Median :8.000 Median :275.8 Median :175.0
> Mean :17.15 Mean :6.947 Mean :290.4 Mean :160.3
> 3rd Qu.:19.20 3rd Qu.:8.000 3rd Qu.:360.0 3rd Qu.:192.5
> Max. :24.40 Max. :8.000 Max. :472.0 Max. :245.0
> drat wt qsec vs am
>
> Min. :2.760 Min. :2.465 Min. :15.41 Min. :0.0000 Min. :0
>
> 1st Qu.:3.070 1st Qu.:3.438 1st Qu.:17.18 1st Qu.:0.0000 1st Qu.:0
>
> Median :3.150 Median :3.520 Median :17.82 Median :0.0000 Median :0
>
> Mean :3.286 Mean :3.769 Mean :18.18 Mean :0.3684 Mean :0
>
> 3rd Qu.:3.695 3rd Qu.:3.842 3rd Qu.:19.17 3rd Qu.:1.0000 3rd Qu.:0
>
> Max. :3.920 Max. :5.424 Max. :22.90 Max. :1.0000 Max. :0
>
> gear carb
> Min. :3.000 Min. :1.000
> 1st Qu.:3.000 1st Qu.:2.000
> Median :3.000 Median :3.000
> Mean :3.211 Mean :2.737
> 3rd Qu.:3.000 3rd Qu.:4.000
> Max. :4.000 Max. :4.000
> ------------------------------------------------------------
> : 1
> mpg cyl disp hp drat
>
> Min. :15.00 Min. :4.000 Min. : 71.1 Min. : 52.0 Min.
> :3.54
> 1st Qu.:21.00 1st Qu.:4.000 1st Qu.: 79.0 1st Qu.: 66.0 1st
> Qu.:3.85
> Median :22.80 Median :4.000 Median :120.3 Median :109.0 Median
> :4.08
> Mean :24.39 Mean :5.077 Mean :143.5 Mean :126.8 Mean
> :4.05
> 3rd Qu.:30.40 3rd Qu.:6.000 3rd Qu.:160.0 3rd Qu.:113.0 3rd
> Qu.:4.22
> Max. :33.90 Max. :8.000 Max. :351.0 Max. :335.0 Max.
> :4.93
> wt qsec vs am gear
>
> Min. :1.513 Min. :14.50 Min. :0.0000 Min. :1 Min. :4.000
>
> 1st Qu.:1.935 1st Qu.:16.46 1st Qu.:0.0000 1st Qu.:1 1st Qu.:4.000
>
> Median :2.320 Median :17.02 Median :1.0000 Median :1 Median :4.000
>
> Mean :2.411 Mean :17.36 Mean :0.5385 Mean :1 Mean :4.385
>
> 3rd Qu.:2.780 3rd Qu.:18.61 3rd Qu.:1.0000 3rd Qu.:1 3rd Qu.:5.000
>
> Max. :3.570 Max. :19.90 Max. :1.0000 Max. :1 Max. :5.000
>
> carb
> Min. :1.000
> 1st Qu.:1.000
> Median :2.000
> Mean :2.923
> 3rd Qu.:4.000
> Max. :8.000
>>
>
> I am using the latest version of *R-3.2.4 on Windows*, however, this error
> is being generated in the previous version too,
>
> Hope this reporting will get serious attention in debugging.
>
> With best regards,
>
> Dr. A.K. Singh
> Head, Department of Agril. Statistics
> Indira Gandhi Krishi Vishwavidyalaya, Raipur
> Chhattisgarh, India, PIN-492012
> Mobile: +919752620740
> Email: akhileshsingh.igkv at gmail.com
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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