Пример Aggregate() в R

Я смотрел на страницу помощи для aggregate функция в R. Я никогда не использовал эту функцию удобства, но у меня есть процесс, который должен помочь мне ускорить. Тем не менее, я был полностью неспособен пройти через пример и понять, что происходит.

одним из примеров является следующее:

1> aggregate(state.x77, list(Region = state.region), mean)
         Region Population Income Illiteracy Life Exp Murder HS Grad  Frost   Area
1     Northeast       5495   4570      1.000    71.26  4.722   53.97 132.78  18141
2         South       4208   4012      1.738    69.71 10.581   44.34  64.62  54605
3 North Central       4803   4611      0.700    71.77  5.275   54.52 138.83  62652
4          West       2915   4703      1.023    71.23  7.215   62.00 102.15 134463

вывод здесь именно то, что я ожидал бы. Поэтому я пытаюсь понять, что происходит. Поэтому я смотрю на state.x77

1> head(state.x77)
           Population Income Illiteracy Life Exp Murder HS Grad Frost   Area
Alabama          3615   3624        2.1    69.05   15.1    41.3    20  50708
Alaska            365   6315        1.5    69.31   11.3    66.7   152 566432
Arizona          2212   4530        1.8    70.55    7.8    58.1    15 113417
Arkansas         2110   3378        1.9    70.66   10.1    39.9    65  51945
California      21198   5114        1.1    71.71   10.3    62.6    20 156361
Colorado         2541   4884        0.7    72.06    6.8    63.9   166 103766

хорошо, это странно для меня. Я ожидал бы увидеть колонку в состоянии.x77, который следует по имени state.region или что-то в этом роде. Итак, государство.регион должен быть собственным объектом. Поэтому я делаю str () на нем:

1> str(state.region)
 Factor w/ 4 levels "Northeast","South",..: 2 4 4 2 4 4 1 2 2 2 ...

похоже на штат.регион-это всего лишь фактор. Каким-то образом должна быть связь между государством.регион и государство.x77, который следует для того, для Aggregate() для группы государств.x77, который следует за счет государства.регион. Но эта связь для меня загадка. Вы можете помочь мне заполнить мои очевидные недоразумения?

3 ответов


из старого тампона (это были тампоны?) реклама: "доказательство, а не только обещания!"

state.x777 <- as.data.frame(state.x77)
state.x777 <- cbind(state.x777, stejt.ridzn = state.region)
aggregate(state.x77, list(Region = state.x777$stejt.ridzn), mean)

они, вероятно, в правильном порядке, поскольку эти объекты документированы на той же странице справки ?state.x77, который имеет:

Details:

     R currently contains the following “state” data sets.  Note that
     all data are arranged according to alphabetical order of the state
     names.

попробовать help(state.region) etc - - - они все выровнены:

детали:

 R currently contains the following “state” data sets.  Note that
 all data are arranged according to alphabetical order of the state
 names.