for-Schleife durch die Daten-frame und Schleifen mit eindeutigen Werten
Ich versuche, die Arbeit am code zu erstellen eine Funktion zum drei-Stufen-cluster sampling, aber ich bin gerade mit dummy-Daten jetzt so dass ich verstehen kann, was Los ist, in meiner Funktion.
Ich arbeite für loops und einen Daten-Rahmen mit gruppierten Werte. Ich bin ein Daten-frame, der Daten enthält:
Cluster group value value.K.bar value.M.bar N.bar
1 1 A 1 1.5 2.5 4
2 1 A 2 1.5 2.5 4
3 1 B 3 4.0 2.5 4
4 1 B 4 4.0 2.5 4
5 2 B 5 4.0 6.0 4
6 2 C 6 6.5 6.0 4
7 2 C 7 6.5 6.0 4
ich versuche ausführen der for-Schleife
n <- dim(data)[1]
e <- 0
total <- 0
for(i in 1:n) {e = data.y$value.M.bar[i] - data$N.bar[i]
total = total + e^2}
Meine Frage ist: gibt es eine Möglichkeit, führen Sie die gleiche Schleife, aber für die eindeutigen Werte in der Gruppe? Sagen:
Group 'A', 'B', 'C'
Jede Hilfe wäre sehr geschätzt werden!
Edit: für korrekte Sprache
- was ist
data.y
im Gegensatz zudata
? - Nur ein Gedanke in deinem Beispiel: In meiner (begrenzten) Erfahrung mit echten Daten, die ich gefunden habe, ist es eine schlechte Politik zum speichern von berechneten Werten (wie Ihr
value.K.bar
) neben raw-Daten, da, wenn ich die Teilmenge oder drop Zeilen, diejenigen, die berechneten Werte möglicherweise ungültig.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie
by
zum Beispiel, um Ihre Daten pro Gruppe. Zuerst habe ich wickeln Sie Ihren code in einer Funktion, die Daten als input.Dann zu berechnen insgesamt nur für Gruppe B und C Sie dies tun :
Aber besser , Hier ein vektorisiert version Ihrer Funktion