另一個棘手的問題我無法解決。在data.frame中使用If條件
我有兩個數據框(「陽光」和「霜」)。一個是每年累計日照時數,另一個是冬季極端氣溫(12月 - 2月)。我現在需要做的是檢查Frost的這些數據框架。 在這種情況下,如果溫度低於-19度,我們會談到弗羅斯特。但是,如果一年中的日照時數超過300小時,我們就會談到弗羅斯特 - 21度。然而,另一個先決條件是,數據幀Frost中的年份必須在當前結束時和次年(12月至2月)檢查。這意味着,如果1962年日照時數超過300小時,我需要檢查1962年12月到1963年2月的霜。 以下是data.frames。
"Sunshine"
year hours
1962 396
1963 290
1964 301
"Frost"
Date temperature
1962-12-26 -19.21
1963-01-13 -20.29
1963-01-17 -21.47
1964-01-31 -20.54
現在我遇到的麻煩是如何將這些結合起來,dataframes,所以它顯示我只能用冰霜溫度,那裏的條件已經得到滿足的日期。
在這種情況下,我們在1962年冬季沒有發生19,21°的霜凍事件,因爲年內陽光超過300小時,觸發溫度爲-21°。 1963年1月,我們發生了霜事件,因爲1962年日照時間超過了300小時,所以情況達到-21°。因爲1963年的陽光超過了300小時,因此也是在1964年的霜。
1963-01-17 -21.47
1964-01-31 -20.54
有沒有人有關於如何解決這個問題的想法。
你嘗試過什麼?我會在一年中將兩個data.frames合併在一起,以便您可以將行邏輯作爲開始。看看'as.Date',''strptime'和'merge'。 – Justin