ich sitze gerade an der Auswertung von Daten aus einem Experiment und habe eine Problem, bei dem ich Hilfe gebrauchen könnte, da sich mein r Wissen auf einen Kurs beschränkt und ich in Foren bisher keine Lösung finden konnte.
Und zwar habe zwei Dataframes und möchte jedes Element aus einer Spalte des Einen (n=7375) mit jedem Element aus einer Spalte des Zweiten (n=192) vergleichen und wenn sie übereinstimmen aus der gleichen Zeile des Zweiten einen Wert aus einer anderen Spalte, in die gleiche Zeile des Ersten in eine andere Spalte schreiben. Das sieht dann in etwa so aus:
Dataframe 1:
ID Wort
E1 NA
E4 NA
E3 NA
… …
Dataframe 2:
ID Wort
E1 m
E2 f
E3 m
… …
Neuer Dataframe 1
ID Wort
E1 m
E4 NA
E3 m
… …
Gerade löse ich das mit einer verschachtelten for - Schleife aber das soll man bei r ja eigentlich nicht machen und es dauert eeeeeewig. Hier der Code:
Code: Alles auswählen
for (i in 1:length(data$Item_ID)) {
for (x in 1:length(korrekt$Item_id)) {
if(data$Item_ID[i]==korrekt$Item_id[x] & is.na(data$Item_ID[i])==FALSE) #
data$Wort[i] <- korrekt$Wort[x];
}
}
Schon mal tausend Dank im voraus,
Cassy