首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >得到最大效果发生的日期CausalImpact R

得到最大效果发生的日期CausalImpact R
EN

Stack Overflow用户
提问于 2020-01-03 18:50:36
回答 1查看 97关注 0票数 0

在R中使用CausalImpact

当我使用max(impact$series$point.effect)时,它会返回max效果,如下所示

代码语言:javascript
复制
    >     max(impact$series$point.effect)
[1] 4.147952

我想知道是否有一种简单的方法也可以得到与这个数字相关的日期。给我一个像1 4.147952,2/14/2017这样的输出,有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-03 19:17:18

有很多方法可以做到这一点,最简单的方法是将数据转换成一个数据帧,并轻松处理它。

我没有尝试使用额外的软件包,即tidyverse,只使用Base,以避免使解决方案复杂化。

另外,我还使用MarketMatching数据复制了一个例子;

代码语言:javascript
复制
library(MarketMatching)
library(CausalImpact)

data(weather, package="MarketMatching")
mm <- best_matches(data=weather,
                   id_variable="Area",
                   date_variable="Date",
                   matching_variable="Mean_TemperatureF",
                   parallel=TRUE,
                   warping_limit=1, # warping limit=1
                   dtw_emphasis=1, # rely only on dtw for pre-screening
                   matches=5, # request 5 matches
                   start_match_period="2014-01-01",
                   end_match_period="2014-10-01")


results <- MarketMatching::inference(matched_markets = mm,
                                     test_market = "CPH",
                                     end_post_period = "2015-10-01")

series <- as.data.frame(results$CausalImpactObject$series)
series$date <- rownames(series)
series[which.max(series$point.effect), "date"]
# [1] "2014-10-08"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59583804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档