R 的 Reactable 包引入了自定义过滤列的功能。
上面的链接有一些关于如何将下拉(选择)列表添加到特定列的很好的示例,但是我发现很难弄清楚如何在表加载时添加默认的过滤值。
请参阅下面的示例(从上述链接修改),我将如何加载表并包含按Manufacturer值过滤的列Acura?
library(reactable); library(htmltools)
data <- MASS::Cars93[, c("Manufacturer", "Model", "Type", "Price")]
reactable(
data,
filterable = TRUE,
columns = list(
Manufacturer = colDef(
filterInput = function(values, name) {
tags$select(
onchange = sprintf("Reactable.setFilter('cars-select', '%s', event.target.value)", name),
lapply(unique(values), tags$option),
style = "width: 100%; height: 28px;"
)
}
)
),
defaultPageSize = 5,
elementId = "cars-select"
)
Run Code Online (Sandbox Code Playgroud) 所以,我之前问过这个问题,但是对于Excel中的数组公式.但是,我的数据集非常庞大,电子表格几乎没有响应,因此我希望能够在R中运行它以提高效率.
链接到之前回答的问题
我会在这里重申并扩展它.
Day Type Val
1 A 5
1 B 6
1 C 9
1 D 7
2 B 2
2 A 8
2 C 3
2 D 3
3 C 4
3 B 2
3 A 2
4 A 5
4 B 9
4 C 8
5 A 7
5 B 5
6 A 6
6 B 3
6 C 4
7 A 7
7 B 9
Run Code Online (Sandbox Code Playgroud)
我在上面提供了一个简化的数据框架(我的数千行有10行,有数百个'Type').我希望能够分配'类型'然后
计算当天不存在指定"类型"的剩余"类型"的平均值"Val"
计算当天所分配的"类型"存在的剩余"类型"的平均值"Val"
例如,如果我指定'Type'C,那么在第5天和第7天不存在C.
输出将是:
Type Average_Without Average_With
A 7.0 …Run Code Online (Sandbox Code Playgroud)