【发布时间】:2017-05-13 12:13:46
【问题描述】:
有一个数据框
Date Team Opponent Weather Outcome
2017-05-01 All Stars B Stars Rainy 1
2017-05-02 All Stars V Stars Rainy 1
2017-05-03 All Stars M Trade Sunny 0
.
.
2017-05-11 All Stars Vdronee Sunny 0
结果 1 表示胜利。我已经使用表格函数来获取频率和应用条件。
table(df$Outcome, df$Team == "All Stars")
把这个还给我
FALSE TRUE
0 1005 30
1 1323 57
所以获胜的频率是 57/87 =0.655
两个问题:
而不是手动计算获胜频率,我如何将其直接嵌入到公式中?
和
如何根据最近的 x 个观察结果进行过滤?即类似
table(df$Outcome, df$Team == "All Stars" & df$date = filtering for the 5 most recent observations)
谢谢
【问题讨论】:
-
您的
Date列是否总是按时间顺序排序?看起来是这样。 -
比例表可以使用
prop.table() -
@kanak 按每个团队的 desc 顺序按时间顺序排序。例如 2017-01-01 All Stars 2017-01-02 All Stars 2017-01-01 Other Team 2017-01-02 Other Team
-
如果您提供可重现的examples,则更容易获得帮助。欢迎来到堆栈溢出
标签: r count data.table frequency