Seite 1 von 1

Fehlermeldung bei Matching

Verfasst: Mi Aug 07, 2019 10:48 am
von Lis91
Hallo liebe Community,
ich möchte ein Matching mit der Nearest-Neigbour-Methode durchführen und speziell eine Variable (Geschlecht) exakt matchen.
Das ist mein Befehl:

Code: Alles auswählen

match.it <- matchit(Patienten~Alter+Sex+BMI+Alkohol+Nikotin,data=df,method="nearest",m.order="smallest",ratio=1,exact="Sex")
Und das ist die Fehlermeldung, die ich bekomme:
Error in Ops.data.frame(exact[itert, k], exact[clabels, k]) :
‘!=’ only defined for equally-sized data frames
In addition: Warning message:
In matchit2nearest(c(`1` = 1, `2` = 1, `3` = 1, `4` = 1, `5` = 1, :
Fewer control than treated units and matching without replacement. Not all treated units will receive a match. Treated units will be matched in the order specified by m.order: smallest
Jemand eine Idee, woran das liegen kann? Vielen Dank :)

Liebe Grüße
Lis

Re: Fehlermeldung bei Matching

Verfasst: Mi Aug 07, 2019 11:06 am
von bigben
Hallo lis,

ich bin mit der Funktion nicht vertraut, aber was sagst Du denn zur Fehlermeldung? Ist es plausibel, dass es zuwenig Frauen oder zuwenig Männer in der Kontrollgruppe gibt oder kommt bei den "treated" ein drittes Geschlecht vor, das es bei den Kontrollen nicht gibt?

LG,
Bernhard

Re: Fehlermeldung bei Matching

Verfasst: Mi Aug 07, 2019 11:22 am
von Lis91
Hallo Bernhard,
danke für Deine Tipps! Personen mit einem dritten Geschlecht gibt es nicht und innerhalb des Datensatzes sind es ca. 90 zu 150 Probanden je Gruppe. Also daran wird es wohl leider auch nicht liegen. Vorallem hat das Matching ohne dem Zusatz des exakten Matchens auch noch funktioniert, nur leider erfordert meine Fragestellung das.

Liebe Grüße
Lis

Re: Fehlermeldung bei Matching

Verfasst: Mi Aug 07, 2019 11:36 am
von bigben
Lis91 hat geschrieben: Mi Aug 07, 2019 11:22 am Also daran wird es wohl leider auch nicht liegen.
"Wird wohl" :?:
Besser prüfen, z.B. mit

Code: Alles auswählen

table(df$Sex, df$Patienten)
LG,
Bernhard