我在向量中有两个位置:
ListOfLocations <- c("L1", "L2")
我在向量中的上述两个位置发生了三个事件:
ListOfEvents <- c("E1", "E2", "E3")
(在我的实际数据集中,我有66个地点和300个事件。)
我已经构建了一个模型来预测在每个位置发生的事件的概率,其中训练和测试集与实际数据一起。现在,我的任务是预测接下来56天每个事件在每个位置发生事件的概率。为了做到这一点,我相信每个Location * Event组合我都需要空数据集。代码如下:
dfNames <- apply(expand.grid(ListOfLocations, ListOfEvents), 1, function(x) paste0(x[1], x[2]))
dfNames
[1] "Location1Event1" "Location1Event2" "Location1Event3"
[4] "Location2Event1" "Location2Event2" "Location2Event3"
newData <- setNames(replicate(length(dfNames),
data.frame(Location = character(56),
Event = character(56),
Probs = double(56),
Date = character(56),
DayWeek = integer(56), stringsAsFactors = FALSE), simplify = FALSE), dfNames)
我有一个数据框列表的原因是因为我想在map
包中使用purrr
函数。我想在Location
和Event
变量中填写位置和事件的名称。任何帮助表示赞赏。谢谢!
答案 0 :(得分:0)
你真的应该使用list来代替data.frame(只需用userSeed
取代data.frame()
。你的单身&#34; E1&#34;,&#34; L1& #34;值将在data.frame中重复56次。
list()
基础R中的地图以及purrr中的众多速记地图功能。