在R中使用lappy循环遍历R中的data.frames列表
我有一个数据框,如下图所示,由于尺寸限制: 因此,我的目标是使用数据帧列表在R中使用lappy循环遍历R中的data.frames列表,r,list,dplyr,apply,lapply,R,List,Dplyr,Apply,Lapply,我有一个数据框,如下图所示,由于尺寸限制: 因此,我的目标是使用数据帧列表瓶颈列表,并使用lappy对所有数据帧运行相同的分析。它们是定制的,但我正在努力让它通过每个df运行 测试是瓶颈列表[[1]] 下面是一个函数示例 test2 <- test %>% mutate(early_startTime = startTime - 300) %>% mutate(id = rownames(test)) loop <- lapply(1:nrow(tes
瓶颈列表
,并使用lappy对所有数据帧运行相同的分析。它们是定制的,但我正在努力让它通过每个df运行
测试
是瓶颈列表[[1]]
下面是一个函数示例
test2 <- test %>%
mutate(early_startTime = startTime - 300) %>%
mutate(id = rownames(test))
loop <- lapply(1:nrow(test), function(x) {
neck_row <- test[x,]
test_list <- test[which(test$startTime == bottleneck_row$endTime),]
})
match <- do.call(rbind,loop)
events * match
test2%
突变(早期开始时间=开始时间-300)%>%
变异(id=行名(测试))
循环如果是data.frame的列表
,则使用映射
在列表
上循环,并变异
以在每个data.frame
中创建新列
library(purrr)
library(dplyr)
bottleneck_list2 <- map(bottleneck_list, ~ .x %>%
mutate(early_startTime = startTime - 300, id = row_number()))
如果我们想做一些转换
lapply(bottleneck_list, function(test){
row.names(test) <- NULL
test$somecol <- test$col1 + 24
test
})
lappy(瓶颈列表、功能(测试){
row.names(test)这是一个数据帧列表,但是我不认为这会起作用,因为会发生几个操作,更新代码now@JohnThomas单个data.frame的代码显示为test%>%mutate(早期\u startTime=startTime-300)%%>%mutate(id=rownames(test))
更新以更好地封装问题。基本上,如果我必须对每个数据帧执行大量操作,但方式相同。@JohnThomas实际操作的事件是为了再现性(或缺乏再现性),但我要问的是,我能拿一个data.frames列表并对它们执行任意数量的相同操作吗。
bottleneck_list2 <- lapply(bottleneck_list, function(test)
transform(test, early_startTime = startTime - 300, id = row.names(test)))
lapply(bottleneck_list, function(test){
row.names(test) <- NULL
test$somecol <- test$col1 + 24
test
})