如何在 R 中使用动态数据初始化 bucket_list?
How do I initialize a bucket_list with dynamic data in R?
我想用数据帧中的数据在 R 中初始化 bucket_list。假设我得到了以下数据:
buckets <- data.frame(
text=c("A","A","B"),
labels=c(1,2,3)
)
那我想实现如下bucket_list:
library(sortable)
bucket_list(
header="Test"
,add_rank_list(text = "A",labels = c(1,2))
,add_rank_list(text = "B",labels = c(1) )
)
我的问题是数据帧 buckets 的内容是动态的,所以我需要一个将数据帧 buckets 作为输入的解决方案.
非常感谢您的帮助!
您可以将 data.frame 转换为分组列表。然后,对每个组使用 lapply
并使用 add_rank_list
将每个列表元素放入 bucket_list
.
所需的格式
library(sortable)
buckets <- data.frame(
text=c("A","A","B"),
labels=c(1,2,3)
)
blst <- split(buckets$labels, buckets$text)
rlst <- lapply(names(blst), function(x) {
add_rank_list(
text = x,
label = blst[[x]]
)
})
do.call(bucket_list, c(header = "New Test Here", rlst))
我想用数据帧中的数据在 R 中初始化 bucket_list。假设我得到了以下数据:
buckets <- data.frame(
text=c("A","A","B"),
labels=c(1,2,3)
)
那我想实现如下bucket_list:
library(sortable)
bucket_list(
header="Test"
,add_rank_list(text = "A",labels = c(1,2))
,add_rank_list(text = "B",labels = c(1) )
)
我的问题是数据帧 buckets 的内容是动态的,所以我需要一个将数据帧 buckets 作为输入的解决方案.
非常感谢您的帮助!
您可以将 data.frame 转换为分组列表。然后,对每个组使用 lapply
并使用 add_rank_list
将每个列表元素放入 bucket_list
.
library(sortable)
buckets <- data.frame(
text=c("A","A","B"),
labels=c(1,2,3)
)
blst <- split(buckets$labels, buckets$text)
rlst <- lapply(names(blst), function(x) {
add_rank_list(
text = x,
label = blst[[x]]
)
})
do.call(bucket_list, c(header = "New Test Here", rlst))