【发布时间】:2021-11-23 18:23:52
【问题描述】:
我正在尝试使用 R 中的 dplyr::mutate 获得一个公式,以向我显示厄尔尼诺现象或拉尼娜现象是否在我的数据框中之前发生过。
规则决定是:
如果 $TMA_{t-1} > 0.5 ,, \mbox{and} ,, TMA_{t-2} > 0.5 \mbox{and} ,, TMA_{t-3} > 0.5 \mbox{and} ,, TMA_{t-4} > 0.5 \mbox{and} ,, TMA_{t-5} > 0.5 \mbox{then} ,, \mbox{“厄尔尼诺”} $
否则
$TMA_{t-1}
如果以上都没有发生,则留空。
我们有更具体的:
如果最近 5 次连续 TMA > 0.5 发生,则为“厄尔尼诺”,否则如果最近 5 次连续 TMA
这是我在电子表格中建立解决方案的问题的一个小视图:
Excel formula for rule of decision characterization
葡萄牙语=SE(E means =IF(AND ...
在 R 中的数据框中,我们可以这样做:
library(dplyr)
library(fpp3)
dates <- yearmonth(c(
"2018-02",
"2018-03",
"2018-04",
"2018-05",
"2018-06",
"2018-07",
"2018-08",
"2018-09",
"2018-10",
"2018-11",
"2018-12",
"2019-01",
"2019-02",
"2019-03",
"2019-04",
"2019-05",
"2018-06"
))
TMA <- c(
-0.85,
-0.69,
-0.50,
-0.22,
-0.01,
0.09,
0.23,
0.49,
0.76,
0.90,
0.82,
0.75,
0.73,
0.72,
0.66,
0.54,
0.45
)
df <- data.frame(dates, TMA)
df <- df %>%
mutate(
´Climatic Condition´=
# The conditional statement that I had wrote above... (HELP!)
)
如何在 R 中完成 Climatic Conditioninside dplyr::mutate ?
【问题讨论】:
-
或者也许以另一种方式,不一定使用
dplyr...