我有一个数据库(使用 SQLite),它的 ID 有一个带有 autoinc 的主键,它将值加载到列表框控件中。 如果我正常循环遍历数据库,将数据库的值添加到我的列表框中,我无法使用SelectedIndex获取ID ,因为Index并不总是与ID相同, ID也不会总是Index . 当我想根据Se ...
提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
我尝试在 data.frame df
编写带有 ID 的循环代码。 我现在所做的是构建另一个列表 dm,其中包含来自df$ID
的唯一df$ID
:
dm<-df %>% select(ID) %>% unique()
for (i in 1:length( dm$ID)){
df_new<-df %>% filter(ID %in% dm$ID[i])
...
当前代码可以做我需要的。 但我想知道是否有另一种方法可以在不构建 dm 的情况下做到这一点? 我想按 df 中的每个 ID 构建子集。 有什么建议吗?
不是循环遍历unique
“ID”和subset
,而是split
更快的选项,它将根据“ID”的unique
值将data.frame
拆分为data.frame
list
df_list <- split(df, df$ID)
从这里,我们可以使用lapply
或for
循环
pdf(paste0(out_dir, output_date,'.pdf'))
for(i in seq_along(df_list)) {
ggplot(data = df_list[[i]]) +
...
}
dev.off()
或者用lapply
pdf(paste0(out_dir, output_date,'.pdf'))
lapply(df_list, function(dat)
ggplot(data = dat) +
...
)
dev.off()
关于创建unique
“ID”的对象,更好的选择是
for(un in unique(df$ID)) {
df_new <- df %>%
filter(ID == un)
ggplot(df_new) +
...
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.