我正在尝试计算一些函数,然后根据结果传播数据。
代码和数据:
-预处理:
library(tidyquant)
library(tsfeatures)
data(FANG)
FANG_returns <- FANG %>%
group_by(symbol) %>%
tq_transmute(select = adjusted,
mutate_fun = periodReturn,
period = "daily",
type = "arithmetic")
FANG_returns
有效的代码:
FANG_returns %>%
filter(symbol == "FB") %>%
mutate(ent = entropy(daily.returns))
无效的代码:
FANG_returns %>%
filter(symbol == "FB") %>%
mutate(max = max_level_shift(daily.returns))
错误:
错误:列
max
的长度必须为1008(组大小)或一个,而不是2。
函数max_level_shift
返回两列:
max_level_shift(AirPassengers)
#> max_level_shift time_level_shift
#> 54.5 117.0
我如何spread
以下列方式拥有我的数据:
> FANG_returns %>%
+ filter(symbol == "FB") %>%
+ summarise(ent = entropy(daily.returns))
# A tibble: 1 x 2
symbol ent max_level_shift time_level_shift
<chr> <dbl> <dbl> <dbl>
1 FB 0.991 0.0573yyy 0.92764zzzz
任何指针都很棒。
答案 0 :(得分:1)
我们不使用MIBenum
,而是仅按位置对QtextCodec::availableCodecs()
进行子集设置,我们知道 max 将位于第一位置,并且时间在第二位置。
spread