Hallo Forum-Mitglieder,
ich stehe vor folgendem Problem:
Ich versuche für eine Mehrebenenanalyse eine Einkommensvariable zu erstellen für alle im Datensatz enthalten Einkommensvariablen (jedes Land, insgesamt 32, besitzt eine eigene Variable).
Nun würde ich gerne nach und nach die einzelnen Werte der jeweiligen Länder in einer neu erstellten Variable kopieren. Leider klappt es nicht so ganz. Habe Befehle wie „paste“ und „rbind“ schon ausprobiert, jedoch hat dies nicht funktioniert.
LEGENDE:
CNTRY_Code -> definiert das jeweilige Land (32=Germany)
INC -> Einkommensangabe der jeweilig Befragten
Der Datensatz sieht wie folgt aus:
CNTRY_Code—-GER_INC——FR_INC —-UK_INC...
32—————————2500————NA ————NA
32-———————-—1800————NA ————NA
32—————————3400————NA ————NA
32—————————NA—————NA ————NA
32—————————4200————NA ————NA
...
40 —————————NA————2600 ———-NA
40 —————————NA————3100 ———-NA
40 —————————NA————1700 ———-NA
40 —————————NA ————2100 ———NA
40 —————————NA ————NA ————-NA
40 —————————NA ————600 ———--NA
...
62 —————————NA ————NA ———-—5200
62 —————————NA ————NA ———-—1300
...
Vielen Dank im Voraus
Viele Grüße
Jörn
Werte mehrerer verschiedener Variablen in eine Variable kopieren
Re: Werte mehrerer verschiedener Variablen in eine Variable kopieren
Hallo Jörn,
wenn die Daten ganz konsistent so aufgebaut sind, kannst Du einfach Reihensummen bilden. Schau Dir dieses Beispiel mal an:
Wie Du siehst, macht diese Variable aus lauter NA in der Summe eine 0. Wenn Du das nicht willst, geht folgende Alternative:
HTH,
Bernhard
wenn die Daten ganz konsistent so aufgebaut sind, kannst Du einfach Reihensummen bilden. Schau Dir dieses Beispiel mal an:
Code: Alles auswählen
bsp <- data.frame(ctry = c(32, 32, 32, 43, 43, 43, 43),
ger = c(101, 102, 103, NA, NA, NA, NA),
fr = c(NA, NA, NA, 201, 202, 203, NA))
print(bsp)
bsp$income <- rowSums(bsp[, c(2, 3)], na.rm = TRUE)
print(bsp)
Code: Alles auswählen
bsp <- data.frame(ctry = c(32, 32, 32, 43, 43, 43, 43),
ger = c(101, 102, 103, NA, NA, NA, NA),
fr = c(NA, NA, NA, 201, 202, 203, NA))
bsp$income <- rowMeans(bsp[, c(2, 3)], na.rm = TRUE)
print(bsp)
Bernhard
Zuletzt geändert von bigben am Do Jan 16, 2020 8:28 am, insgesamt 1-mal geändert.
Grund: Ergänzung
Grund: Ergänzung
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Werte mehrerer verschiedener Variablen in eine Variable kopieren
Hallo Bernhard,
vielen Dank für die super schnelle Antwort! Den rowMeans-Befehl verwende ich sogar öfter und bin nicht dahintergekommen... Danke für den Denkanstoß!!
Viele Grüße
Jörn
vielen Dank für die super schnelle Antwort! Den rowMeans-Befehl verwende ich sogar öfter und bin nicht dahintergekommen... Danke für den Denkanstoß!!
Viele Grüße
Jörn