2016-12-21 3 views
0

Ich versuche, einen Anteil von Armen mit dem Umfragepaket zu berechnen. Also erstelle ich eine Teilmenge mit der Variablen der Gesamtbevölkerung (eins) und n genannt (ich bin mir nicht sicher, ob es der richtige Weg ist, dies zu tun). So , ich habe:Anteil der Armen

str(base2015$q) 
num [1:117939] 0 0 0 0 0 0 0 0 0 0 ... 
str(base2015$one) 
int [1:117939] 1 1 1 1 1 1 1 1 1 1 ... 

und eine kategorische Variable Region. (y ist mein Svydesign) Ich habe versucht, die SvyRatio-Funktion so zu verwenden, aber er gibt mir das Ergebnis für alle Datensätze, und ich will nach Untergruppe (Region). In der Tat mag ich dies für jede Region (das Bild sehen) proportion of poor

svyratio(numerator=~q, 
     ~one, 
     design = y, separate=FALSE, na.rm=TRUE, 
     formula, covmat=FALSE, deff=FALSE) 

Ich habe auch versucht, eine Teilmenge erstellen mit der Bevölkerung, und dann die svyby verwenden:

n <- subset(y , one == 1) 
View(n) 
svyby(~ q , ~ region , n , vartype=c("se","ci","cv"), svytotal) 
svyby(~ q , ~ region , n , vartype=c("se","ci","cv"), svymean) 
    region q se ci_l ci_u cv 
1  1 NA NaN NaN NaN NaN 
2  2 NA NaN NaN NaN NaN 
3  3 NA NaN NaN NaN NaN 
4  4 NA NaN NaN NaN NaN 
5  5 NA NaN NaN NaN NaN 

Er gib mir diesen. Ich weiß nicht, was ich falsch mache. Kann mir jemand dabei helfen?

+0

Die 'NA/NaN'-Werte sind ein wahrscheinliches Ergebnis fehlender Werte in Ihren Daten. Um dies zu bestätigen, könnten Sie 'nonMissDF = na..omit (DF)' verwenden, um fehlende Daten auszuschließen und Ihre Funktion erneut zu versuchen. Wenn es bestätigt wird, dass Sie mit fehlenden Daten konfrontiert sind, schlage ich vor, Methoden für die Imputation von fehlenden Daten in Umfrage-Analyse zu untersuchen – OdeToMyFiddle

+0

Dank @Osssan. das neue nonMissDF funktioniert gut. Und ich kann fehlende Daten nicht unterstellen, weil das brasilianische Institut für Geographie und Statistik (ibge) es bereits getan hat. Also ich denke ich kann nicht. danke trotzdem –

Antwort

0
data(scd) 

scddes<-svydesign(data=scd, prob=~1, id=~ambulance, strata=~ESA,nest=TRUE, fpc=rep(5,6)) 

svyby(~ alive , denominator = ~ arrests , by = ~ ambulance , scddes , svyratio) 

# which missings do you want to remove? read `?svyby` 
svyby(~ alive , denominator = ~ arrests , by = ~ ambulance , scddes , svyratio , na.rm = TRUE , na.rm.by = TRUE , na.rm.all = TRUE) 
+0

Danke @Anthony Damico Hilf mir sehr –

Verwandte Themen