I got a wired problem following the example 1 in R Guide. Here is the example
> datafilename="http://personality-project.org/r/datasets/R.appendix1开发者_Go百科.data"
> data.ex1 = read.table(datafilename,header=T)   #read the data into a table 
> aov.ex1 = aov(Alertness~Dosage,data=data.ex1)  #do the analysis of variance
> summary(aov.ex1)                                    #show the summary table
But, when I applied aov on my own data, things changed.
> test.data <- data.frame(fac=letters[c(1:3,1:3)], x=1:6)
> test.result <- aov(fac~x, data=test.data)
Error in storage.mode(y) <- "double" :
  invalid to change the storage mode of a factor
In addition: Warning message:
In model.response(mf, "numeric") :
  using type="numeric" with a factor response will be ignored
I'm totally confused. what's the difference between test.data and data.ex1 in example of R guide?
> str(test.data)
'data.frame':   6 obs. of  2 variables:
 $ fac: Factor w/ 3 levels "a","b","c": 1 2 3 1 2 3
 $ x  : int  1 2 3 4 5 6
> str(data.ex1)
'data.frame':   18 obs. of  2 variables:
 $ Dosage   : Factor w/ 3 levels "a","b","c": 1 1 1 1 1 1 2 2 2 2 ...
 $ Alertness: int  30 38 35 41 27 24 32 26 31 29 ...
it should be aov(x ~ fac, data = test.data), which works. The formula needs to be response ~ factor, not factor ~ response.
 
         
                                         
                                         
                                         
                                        ![Interactive visualization of a graph in python [closed]](https://www.devze.com/res/2023/04-10/09/92d32fe8c0d22fb96bd6f6e8b7d1f457.gif) 
                                         
                                         
                                         
                                         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论