我有一个问题是从R中的data.frame中提取多个值并将它们放入一个新的data.frame中.
我有一个看起来像这样的data.frame(df)
PRICE EVENT
1.50 0
1.70 0
1.65 0
1.20 1
0.90 0
1.70 0
1.55 0
. .
. .
1.10 0
1.20 0
1.14 1
0.90 0
Run Code Online (Sandbox Code Playgroud)
我的实际data.frame有这两列和超过300.000行.名为EVENT的列仅具有值0 OR 1(值1是发生特定事件的代理).
我研究的第一步:如果事件发生,分析价格.第一步很简单.我做到了
vector<-df[df$EVENT==1, "PRICE"]
Run Code Online (Sandbox Code Playgroud)
现在vector包含活动日的所有价格.(这里:1.20和1.14)
但现在我研究的第二步是它变得有趣:
现在我不仅想要参加活动日的价格,还要了解活动日前后x天的价格,并将它们放入矩阵中
例如:我想要在活动前两天和活动后一天(包括活动日)的价格
比我想要创建的新data.frame看起来像
Event 1 Event n
-2 1.70 ... 1.10
-1 1.65 ... 1.20
0 1.20 ... 1.14
+1 0.90 ... 0.90
Run Code Online (Sandbox Code Playgroud)
请记住,4天的跨度[-2:1]只是一个例子.在我的实际研究中,我必须涵盖91天的跨度[-30:60].
谢谢您的帮助 :)