2017-07-04 4 views
0

Ich baue ein Modell in R und ich habe einen Datenrahmen der täglichen Temperaturdaten in Kelvin (CSV-Datei). Ich werde das Modell für jede Station einzeln ausführen. Die Literatur, die ich dem Modell zugrunde liege: Wenn die temperature über 285.15 ansteigt, wird das Laichen induziert und ER wird auf 0 reduziert, was bedeutet, dass meine grafische Ausgabe auf Null fallen sollte und wieder zu steigen beginnt, wenn die Temperatur sinkt. Meine Frage ist: Wie würde ich diesen Befehl in R schreiben? Bis jetzt habe ich geschrieben:Ifelse Temperaturmodellierung

spawn <- ER 
spawning <- ifelse(Mussel_Daily_Temp$AS_TEMP > 285.15, ER-ER, 0) 

Ich habe auch versucht:

if(temperature > 285.15) {ER-ER} 

Meine Parameter wie folgt aussehen:

param <- list(Temperature = Mussel_Daily_Temp$AS_TEMP, etc....) 

Jede Hilfe am meisten geschätzt werden würde!

+0

Bitte einige Beispieldaten und die erwarteten Ergebnisse. – Kristofersen

+0

http://imgur.com/a/ORs3u Das gesamte Modell verwendet zyklische Wassertemperaturdaten in Kelvin, so dass das Wasser einmal pro Jahr über 285,15 K steigt - genug, um ein Laich-Ereignis auszulösen, das den "ER" oder die effektive Reproduktion abfließen lässt Reserve –

+0

Ich meinte den Datenrahmen. Fügen Sie den Kopf von Mussel_Daily_Temp in die Frage ein und wie die Daten aussehen sollen, nachdem der Code auch dort ausgeführt wurde. – Kristofersen

Antwort

1

Sie sind auf dem richtigen Weg:

ifelse(Mussel_Daily_Temp$AS_TEMP > 285.15, 'ER-ER', 0) 
+0

'Warnmeldungen: 1: In doTryCatch (return (expr), Name, parentenv, handler): Listenanzeige neu zeichnen unvollständig 2: In doTryCatch (return (expr), Name, parentenv, handler): ungültige Grafikzustand 'Es gab folgendes in der Konsole zurück .... –

+0

versuche ohne die Zuweisung' <-' –

+0

ER ändert sich immernoch nicht, leider ... keine Fehler angezeigt. das habe ich bisher: 'spawn <- ER ifelse (Mussel_Daily_Temp $ AS_TEMP> 285.15, 'ER-ER', 0)' –