2013-11-19 5 views
1

Я работаю с данными опроса и хочу создать более удобный кадр данных из таблицы f, но не могу найти никаких явных преобразований.R :: Ftable to Usable data.frame

Данные таблицы f (x) выглядят следующим образом: это результат процедуры опроса.

library(survey) 
design <- svydesign(id=~SDMVPSU, strata=~SDMVSTRA, weights=~WTMEC2YR, nest=TRUE,data=nhanes) 

a <- svyby(~factor(HI_CHOL), ~agecat, design, svymean, na.rm=TRUE ,quantiles=0.5,ci=TRUE,vartype=c(lowci="ci",hi="ci"), keep.names=TRUE) 

x <- ftable(a) 

enter image description here

Использование data.frame (х) я получаю что-то вроде этого:

enter image description here

Я бы идеально, как что-то более чистого, с колоннами, как.

Секс Smoking_status, Среднее, Lower_CI, Upper_CI

Спасибо за любую помощь или направления. Либо я пропущу что-то простое, то ли.

+0

Почему бы не проиллюстрировать объект данных в пакете обследования? –

+0

Я не совсем понимаю, что вы говорите. Это вариант в пакете? –

+0

Не знаю, легко ли это. На данный момент я знаю только, что 'brf' не находится в наборах данных, доступных в pkg: survey. –

ответ

0

Возможно, вас заинтересует ftable2df от моего GitHub-only "SOfun" package.

Пример ftable:

data(HairEyeColor) 
ftable(HairEyeColor) 
#    Sex Male Female 
# Hair Eye     
# Black Brown  32  36 
#  Blue  11  9 
#  Hazel  10  5 
#  Green  3  2 
# Brown Brown  53  66 
#  Blue  50  34 
#  Hazel  25  29 
#  Green  15  14 
# Red Brown  10  16 
#  Blue  10  7 
#  Hazel  7  7 
#  Green  7  7 
# Blond Brown  3  4 
#  Blue  30  64 
#  Hazel  5  5 
#  Green  8  8 

Что ftable2df делает:

library(SOfun) 
ftable2df(ftable(HairEyeColor)) 
#  Hair Eye Male Female 
# 1 Black Brown 32  36 
# 2 Black Blue 11  9 
# 3 Black Hazel 10  5 
# 4 Black Green 3  2 
# 5 Brown Brown 53  66 
# 6 Brown Blue 50  34 
# 7 Brown Hazel 25  29 
# 8 Brown Green 15  14 
# 9 Red Brown 10  16 
# 10 Red Blue 10  7 
# 11 Red Hazel 7  7 
# 12 Red Green 7  7 
# 13 Blond Brown 3  4 
# 14 Blond Blue 30  64 
# 15 Blond Hazel 5  5 
# 16 Blond Green 8  8 
0

из ваших комментариев, это выглядит, как вы просто хотите этого?

library(survey) 
data(nhanes) 
design <- svydesign(id=~SDMVPSU, strata=~SDMVSTRA, weights=~WTMEC2YR, nest=TRUE,data=nhanes) 
a <- svyby(~ HI_CHOL , ~agecat + RIAGENDR + race , design, svymean, na.rm=TRUE ,vartype=c(lowci="ci",hi="ci")) 
a 
+0

Извините, на это не смотрели в течение длительного времени. Я проверю это сегодня. –

Смежные вопросы