繁体   English   中英

如何使用唯一 ID 使用循环代码构建子集

How to build subset with looping codes using unique ID

提示:本站收集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 构建子集。 有什么建议吗?

1 个回复

不是循环遍历unique “ID”和subset ,而是split更快的选项,它将根据“ID”的unique值将data.frame拆分为data.frame list

df_list <- split(df, df$ID)     

从这里,我们可以使用lapplyfor循环

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) + 
           ...
  }      
1 使用唯一 ID 循环?

我有一个数据库(使用 SQLite),它的 ID 有一个带有 autoinc 的主键,它将值加载到列表框控件中。 如果我正常循环遍历数据库,将数据库的值添加到我的列表框中,我无法使用SelectedIndex获取ID ,因为Index并不总是与ID相同, ID也不会总是Index . 当我想根据Se ...

2 如何使用R中的循环构建子集查询?

我正在尝试跨越多个列对一个大表进行子集化,因此State_2009 , State_2010 , State_2011等的所有行都不等于“Unknown”。 我的直觉是做这样的事情(来自JS背景),我要么在循环中构建查询,要么在循环中不断地对数据进行子集化,将年份作为变量引用。 但 ...

2017-05-13 09:45:18 2 94   r
3 使用唯一 ID 和条件将子集应用于重复度量?

我试图找到一种方法来使用第一个度量的条件语句对我的数据集(个人的重复度量)进行子集化或过滤。 换句话说,我想过滤数据集以仅包含在时间点 1 存在特定条件的个人的所有时间点的数据。 示例数据: 这将产生以下内容: 我想通过过滤或子集化只包含在“2020-07-29”日期期间漂白列中包含 1 ...

5 使用 for 循环创建具有唯一 ID 的对象

所以我试图生成一个包含多个对象的数组,其中一个对象与另一个数组。 每个对象都应该有自己唯一的 id,但是在使用 for 循环时,每个批次都有具有相同重复 id 的对象。 使用 i 变量甚至添加随机数值似乎都不起作用。 这甚至可以在javascript中实现吗? 测试.js 预期结果: 我得 ...

6 使用循环在唯一ID中移动条目

我正在准备用于生存分析的数据集,并使用R遇到了这个问题。我想知道是否有人“ for loop”专家可以帮助我解决这个问题。 任何建议将不胜感激。 数据集很长,只有三列:ID,日期和数字变量。 示例数据如下所示: 我需要拥有的是: 创建一个附加列“ event_date ...

8 使用for循环创建子集(使用数据框的列)并查找另一列的唯一值

我是R的新手,并且一直坚持解决问题。 谁能指出我哪里出了问题我有以下数据* 有25000个测试ID,每个TestID都有一个相关的分数。 在这种情况下,分数的范围是0到16000。我需要绘制一个图表,显示在特定范围内存在的唯一TestID的数量,即 我编写了一个代码,其中我考 ...

2016-10-06 20:39:47 2 47   r
9 使用R中的循环绘制子集的子集

我有一个看起来像这样的数据框。 我有5个菌株,每个菌株每个日期有3个荧光测量值。 我需要绘制每个菌株相对于日期的每个荧光测量图。 所以,最终我需要得到诸如plot(Fluor~Date) 。 我需要五个图,每个应变图一个,在每个图上都有Fluor.I, Fluor.II, Fluo ...

10 仅使用模块构建VTK的子集

对于当前项目,我只需要一部分VTK模块。 由于没有使用VTK C ++的Windows二进制安装程序(似乎Python绑定的安装程序是唯一可用的),我需要从源代码构建VTK。 此外,因为我正在使用CI(appveyor和travis),所以每次我推送我的仓库时都需要构建VTK,因此我希望将构 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM