我想迭代一次列表列表(在数据中),以便为每个活检站点添加一个随机数,除了if活检站点:没有,在这种情况下,不会发生粘贴。
输入:
list(c("Biopsy site: Duodenal bulb", "Biopsy site: Stomach",
"Biopsy site: None", "Biopsy site: D2 - 2nd part of duodenum"
), "Biopsy site: None", c("Biopsy site: D2 - 2nd part of duodenum",
"Biopsy site: Stomach", "Biopsy site: Oesophagus"), c("Biopsy site: Stomach",
"Biopsy site: None", "Biopsy site: Oesophagus"), c("Biopsy site: Duodenal bulb",
"Biopsy site: Stomach"))预期输出
[1] "3 Biopsy site: Duodenal bulb" "5 Biopsy site: Stomach" "Biopsy site: None" "7 Biopsy site: D2 - 2nd part of duodenum"
[[2]]
[1] "Biopsy site: None"
[[3]]
[1] "8 Biopsy site: D2 - 2nd part of duodenum" "3 Biopsy site: Stomach" "7 Biopsy site: Oesophagus"
[[4]]
[1] "6 Biopsy site: Stomach" "Biopsy site: None" "3 Biopsy site: Oesophagus"
[[5]]
[1] "2 Biopsy site: Duodenal bulb" "3 Biopsy site: Stomach" 尝试
lapply(OGDProcedureDf$BiopsyType, function(p)
ifelse(!grepl("None",OGDProcedureDf$BiopsyType),paste(sample(1:10),OGDProcedureDf$BiopsyType),"")
)但我认为问题是,这是一个嵌套列表,所以我需要嵌套的lapply?
发布于 2018-06-29 12:36:34
没有嵌套的lapply是必要的,而且您的尝试实际上非常接近:
lst_0 <- list(c("Biopsy site: Duodenal bulb", "Biopsy site: Stomach",
"Biopsy site: None", "Biopsy site: D2 - 2nd part of duodenum"
), "Biopsy site: None", c("Biopsy site: D2 - 2nd part of duodenum",
"Biopsy site: Stomach", "Biopsy site: Oesophagus"), c("Biopsy site: Stomach",
"Biopsy site: None", "Biopsy site: Oesophagus"), c("Biopsy site: Duodenal bulb",
"Biopsy site: Stomach"))
lapply(lst_0, function(p)
ifelse(!grepl("None",p),paste(sample(1:10),p),p)
)https://stackoverflow.com/questions/51100811
复制相似问题