Seite 1 von 1

Index als Schleife

Verfasst: Fr Nov 17, 2017 6:51 am
von jessi
Hallo zusammen,

ich möchte meine Programme gerne weiter automatisieren und steh gerade erneut vor einem Problem.
Ich habe Windmessdaten die phi und lam Koordinaten zugeordnet sind. Aus diesen habe ich mir jetzt die 10 höchsten Windspitzen ausgeben lassen

Code: Alles auswählen

max_boen_50 <- sort(boen, decreasing = TRUE)[1:50]
print(max_boen50)
Anschließend habe ich den Index (phi und lam) dieser Werte gesucht:

Code: Alles auswählen

index_boen <- data.frame(name=character(0), len=numeric(0))
for (i in 1:50){
index_boen <- rbind(index_boen, data.frame(which(boen == max_boen50[i], arr.ind=TRUE)))}

df_index_boen <- data.frame(index_boen, max_boen50)

print(df_index_boen)
df_index_boen
          lam    phi          max_boen50
100      1       6 		19.186738
1001     1       5 		18.931313
1002     1       4 		18.702394
1003     1       1 		18.548133
...
So weit so gut. Nun möchte ich allerdings auch den Mittelwind und später die Windrichtung an diesen Indizes wissen. Bis jetzt habe ich das immer händisch abgefragt mit

Code: Alles auswählen

 mittelwind[1,6] 
, da es anfangs nur die höchsten 10 Böen waren. Mit 50 Werte stellte sich das ganz dann doch als etwas aufwendig heraus. Leider schaffe ich es nicht, die lam und phi-Indizes aus df_index_boen in eine Formel zu packen, versucht habe ich das mit einer Doppelschleife über i und j. Das hat leider nicht so recht funktioniert und vielleicht gibt es auch eine einfachere/schönere Lösung, wie man dieses Problem lösen kann.

Vielen Dank für eure Unterstützung.
Jessi

Re: Index als Schleife

Verfasst: Fr Nov 17, 2017 7:34 am
von EDi
Hast du hier

Code: Alles auswählen

max_boen_50 <- sort(boen, decreasing = TRUE)[1:50]
nicht einen identifier für die Beobachtung bzw. Wetterstation?

Oder meinst du sowas:

Code: Alles auswählen

mittelwind[mittelwind$lam %in% df_index_boen$lam & mittelwind$phi %in% df_index_boen$phi]
Ansonsten bitte ein reproduzierbares Beispiel posten - ich verstehe nämlich fast gar nichts...