Seite 1 von 1

Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Mi Apr 14, 2021 9:57 pm
von Lenusch
Hallo zusammen,

ich habe mit R bisher noch nicht so vertieft gearbeitet; bin auch gerade noch dabei mich genauer einzulesen, aber falls jemand von Euch spontan eine Idee zu meinem Problem hätte, wäre ich wirklich sehr dankbar.

Folgende Ausgangssituation:

Ich habe acht binäre Variablen (c1- c8), die binär kodiert sind (1/0). Diese erfassen die Anzahl komorbid auftretenden psychischen Störungen. Also z.B. Personen die bei variable c1 eine 1 hat, bei Variable c2 1, bei Variable c3 eine 1 hat insgesamt 3 von insgesamt möglichen 8 komorbid, also gleichzeitig auftretenden Störungen. Die Anzahl würde ich gerne in eine einzelne Variable packen, mit der ich in meiner Analyse besser rechnen kann.

Mein Ziel:

Genauer würde ich also aus diesen acht variablen gerne eine einzige machen, die dann je nach Anzahl der komorbiden Störungen Werte von 1-8 annehmen kann.

Ich denke es wäre sinnvoll hier die neue variable mithilfe eines for loops zu erstellen (?) aber habe soetwas bisher noch nicht gemacht.

Wie gesagt ich freue mich über jeden Tipp!

Re: Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Do Apr 15, 2021 6:48 am
von bigben
Hallo!

kannst Du mit folgendem Code was anfangen bzw. ihn für Dich anpassen?

Code: Alles auswählen

beobachtung <- data.frame(ID = 1:5, c1 = c(1,0,1,0,1), c2 = c(1, 1, 0, 0, 0), 
                          c3 = c(1, 1, 1, 1, 0), c4 = c(0, 0, 0, 0, 1))
head(beobachtung)

beobachtung$summe <- rowSums(beobachtung[,c("c1", "c2", "c3", "c4")])

head(beobachtung)
LG,
Bernhard

Re: Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Do Apr 15, 2021 1:33 pm
von Lenusch
Hallo Bernhard,

Dein Ansatz hat mir auf jeden Fall geholfen!

Leider habe ich noch einen Fehler, den ich blöderweise nicht gelöst bekomme:

Hier in abgekürzter Form mein von Dir abgeleiteter Ansatz:

Komorbidität <- data.frame(ID=1:129, MBA$comorbid_1, MBA$comorbid_2, MBA$comorbid_3, MBA$comorbid_4 )


Komorbidität$summe <- rowSums(Komorbidität[,c("MBA.comorbid_1", "MBA.comorbid_2", "MBA.comorbid_3", "MBA.comorbid_4")])

Fehlercode:

Fehler in `[.data.frame`(Komorbidität, , c("MBA.comorbid_1", "MBA.comorbid_2", :
nicht definierte Spalten gewählt


Wie gesagt, vielen, vielen Dank für Deine Hilfe!

LG

Leni

Re: Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Do Apr 15, 2021 5:19 pm
von bigben
Das ist ohne den Datensatz schwer zu beantworten. Mach daraus mal ein reproduzierbares Beispiel, dann wird sich das leicht lösen lassen:

Wertvolle Tipps dazu:
viewtopic.php?f=20&t=11
viewtopic.php?f=20&t=29
https://stackoverflow.com/help/minimal- ... le-example

Außerdem:
Was sagt

Code: Alles auswählen

summe <- MBA$comorbid_1 + MBA$comorbid_2 + MBA$comorbid_3 + MBA$comorbid_4 
head(summe, 20)
Ist das vielleicht die für Dich passendere Antwort?

LG,
Bernhard

Re: Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Fr Apr 16, 2021 3:20 pm
von Lenusch
Hallo Bernhard,

nachdem ich die Variablen numerisch definiert habe^^, hat die Addition der Variablen mein Problem gelöst.

Danke Dir für den hint ;)

LG

Leni

Re: Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Mo Apr 19, 2021 10:16 am
von jogo
Hallo Leni,

Du solltest das Ergebnis stellenweise kontrollieren, z.B. ist die Umwandlung von Faktoren nach numerisch etwas trickreich.
https://cran.r-project.org/doc/FAQ/R-FA ... meric_003f

Gruß, Jörg

Re: Zusammenfügen von acht binären Variablen zu einer numerischen Variable

Verfasst: Mi Aug 18, 2021 1:27 pm
von Lenusch
Ah, danke für den Tipp!