我有一个数据框架,旨在比较两年之间的机票。
df<-data.frame(year=c("1","2","1","2","1","2"),
Daysleft=c(8,8,7,7,6,6),
Count_TypeA=c(1,1,1,1,1,1),
Count_TypeB=c(5,2,5,2,5,2))
在此示例数据框中,剩余天数表示距事件还有剩余天数。我想做的是得出累积计数,其中Daysleft> = Daysleft值,按年份分组。所需的输出如下:
desired<-data.frame(year=c("1","2","1","2","1","2"),
Daysleft=c(8,8,7,7,6,6),
Count_TypeA=c(1,1,2,2,3,3),
Count_TypeB=c(5,2,10,4,15,6))
在我的实际数据中,有许多Count_Type变量,因此理想情况下,我希望得到一个答案,该答案可以避免使用它们的键入名称来命名所有列。
快速查看所需的输出:
year Daysleft Count_TypeA Count_TypeB
1 8 1 5
2 8 1 2
1 7 2 10
2 7 2 4
1 6 3 15
2 6 3 6
我猜想dplyr的group_by()有一个技巧可能会有所帮助,但是对于类似问题(例如Using dplyr to get cumulative count by group)找到的答案对我来说还不清楚。
df2<-df %>%
group_by(year)%>%
答案 0 :(得分:1)
如果您需要独立处理每一列,则可以使用:
df %>% group_by(year) %>% mutate_at(vars(-year, -Daysleft),cumsum)
答案 1 :(得分:0)
我认为cumsum函数在这里起作用。
input_layer = ak.Input()
rnn_layer = ak.RNNBlock(layer_type="lstm")(input_layer)
dense_layer = ak.DenseBlock()(rnn_layer)
output_layer = ak.ClassificationHead(num_classes=2)(dense_layer)
automodel = ak.GraphAutoModel(input_layer, output_layer, max_trials=2, seed=123)
automodel.fit(x, y, validation_split=0.2, epochs=2, batch_size=32)