Создание таблицы Hmisc - PullRequest
3 голосов
/ 28 июля 2010

Просто начните с R и попытайтесь выяснить, что работает для моих нужд, когда дело доходит до создания «сводных таблиц». Я привык к пользовательским таблицам в SPSS, и функция CrossTable в пакете gmodels доставляет меня почти туда, где я должен быть; не говоря уже о том, что легко ориентироваться для человека, только начинающего в R.

Тем не менее, похоже, что таблица Hmisc очень хороша в создании различных сводок и экспорте в LaTex (в конечном счете, что мне нужно сделать).

Мои вопросы: 1) Вы можете легко создать таблицу ниже на странице Hmsic? 2) если да, могу ли я взаимодействовать с переменными (2 в столбце)? и, наконец, 3) могу ли я получить доступ к p-значениям тестов значимости (квадрат хи).

Заранее спасибо,

Брок

   Cell Contents
|-------------------------|
|                   Count |
|             Row Percent |
|          Column Percent |
|-------------------------|

Total Observations in Table:  524 

             | asq[, 23] 
    asq[, 4] |        1  |        2  |        3  |        4  |        5  | Row Total | 
-------------|-----------|-----------|-----------|-----------|-----------|-----------|
           0 |       76  |       54  |       93  |       46  |       54  |      323  | 
             |   23.529% |   16.718% |   28.793% |   14.241% |   16.718% |   61.641% | 
             |   54.286% |   56.250% |   63.265% |   63.889% |   78.261% |           | 
-------------|-----------|-----------|-----------|-----------|-----------|-----------|
           1 |       64  |       42  |       54  |       26  |       15  |      201  | 
             |   31.841% |   20.896% |   26.866% |   12.935% |    7.463% |   38.359% | 
             |   45.714% |   43.750% |   36.735% |   36.111% |   21.739% |           | 
-------------|-----------|-----------|-----------|-----------|-----------|-----------|
Column Total |      140  |       96  |      147  |       72  |       69  |      524  | 
             |   26.718% |   18.321% |   28.053% |   13.740% |   13.168% |           | 
-------------|-----------|-----------|-----------|-----------|-----------|-----------|

Ответы [ 2 ]

4 голосов
/ 04 марта 2012

В пакете gmodels есть функция под названием CrossTable, которая очень удобна для тех, кто используется для вывода SPSS и SAS. Попробуйте этот пример:

library(gmodels)  # run install.packages("gmodels") if you haven't installed the package yet
x <- sample(c("up", "down"), 100, replace = TRUE)
y <- sample(c("left", "right"), 100, replace = TRUE)
CrossTable(x, y, format = "SPSS")

Это должно предоставить вам вывод, такой же, как тот, который вы отображали в своем вопросе, очень SPSS-y. :)

3 голосов
/ 28 июля 2010

Если вы приехали из SPSS, вас может заинтересовать пакет Deducer (http://www.deducer.org).Он имеет табличную функцию на случай непредвиденных обстоятельств:

> library(Deducer)
> data(tips)
> tables<-contingency.tables(
+ row.vars=d(smoker),
+ col.vars=d(day),data=tips)
> tables<-add.chi.squared(tables)
> print(tables,prop.r=T,prop.c=T,prop.t=F)
================================================================================================================

               ==================================================================================               
                                   ========== Table: smoker by day ==========                                   
                       | day 
                smoker |      Fri  |      Sat  |      Sun  |     Thur  | Row Total | 
-----------------------|-----------|-----------|-----------|-----------|-----------|
          No  Count    |        4  |       45  |       57  |       45  |      151  | 
              Row %    |    2.649% |   29.801% |   37.748% |   29.801% |   61.885% | 
              Column % |   21.053% |   51.724% |   75.000% |   72.581% |           | 
-----------------------|-----------|-----------|-----------|-----------|-----------|
         Yes  Count    |       15  |       42  |       19  |       17  |       93  | 
              Row %    |   16.129% |   45.161% |   20.430% |   18.280% |   38.115% | 
              Column % |   78.947% |   48.276% |   25.000% |   27.419% |           | 
-----------------------|-----------|-----------|-----------|-----------|-----------|
          Column Total |       19  |       87  |       76  |       62  |      244  | 
              Column % |    7.787% |   35.656% |   31.148% |   25.410% |           | 



            Large Sample                                                       
       Test Statistic    DF p-value | Effect Size est.  Lower (%)   Upper (%)  
Chi Squared 25.787       3  <0.001  | Cramer's V  0.325 0.183 (2.5) 0.44 (97.5)
-----------





================================================================================================================

Вы можете получить количество и проверить на латекс или HTML, используя пакет xtable:

> library(xtable)
> xtable(drop(extract.counts(tables)[[1]]))
> test <- contin.tests.to.table((tables[[1]]$tests))
> xtable(test)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...