我有数据,我想在时间步骤上聚合,另外想要计算该组中另一个值的最大值 .
为了聚合,我运行以下代码:
s_stats <- lapply(s_df_array, function(x) {
aggregate(x, by=list(unique.values=x$start), length)
})
s_df_array是一个数据帧表,代码可以很好地计算x $ start中每个值的条目出现次数 . 在这里你可以看到一些数据:列表中的第一个data.frame:
alb.station alb.start alb.km
alb 2 10
alb 2 67
alb 3 23
alb 3 74
alb 3 3
alb 3 15
alb 4 23
alb 4 52
列表中的第二个data.frame:
alt.station alt.start alt.km
alt 3 25
alt 3 45
alt 4 15
alt 4 10
列表中的第三个data.frame:与第一个和第二个相同的结构,但列名以“ber”开头 . 这将继续列表中的44个data.frames
对于新列表中的每个data.frame,结果都应该是这样的:
alb.unique.values alb.station alb.max_km
2 2 67
3 4 74
4 2 52
alt.unique.values alt.station alt.max_km
3 2 45
4 2 15
等等所有44个data.frames
编辑:为列表添加了更多示例
1 回答
我们可以做的
有关data.frames的列表
更新
如果我们有一个嵌套的
list
元素,要么创建一个递归函数,要么使用if/else
数据