Hi,

You might want to become familiar with the ?str and ?dim functions, which can 
help you identify the structure of the objects that you are passing to 
colMeans().

In the first case, flights[2] is a data frame with a single column, so will 
have two dimensions with a row and column structure.

In the second case, flights$month is a single numeric vector within the data 
frame and does not have a row and column dimension structure.

If you used flights[[2]], that would be equivalent to flights$month, in 
referencing a single numeric vector.

So, if you used:

str(flights[2])
dim(flights[2])

str(flights$month)
dim(flights$month)

you would see the difference.

Regards,

Marc Schwartz


> On Nov 4, 2020, at 8:26 AM, Engin Yılmaz <ispanyol...@gmail.com> wrote:
> 
> Dear
> I use *flights* database library(nycflights13)
> 
> The following code is working as
> 
> colMeans(flights[2])
> 
> * 6.54851*
> 
> but other code is  not working as
> 
> colMeans(flights$month)
> 
> *Error in colMeans(flights$month) : *
> *  'x' must be an array of at least two dimensions*
> 
> *flights[2]* is equal to the *month *column in database
> 
> *Sincerely*
> Engin YILMAZ

______________________________________________
R-help@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.

Reply via email to