组合 R 中列表列表中的元素
combining elements in a list of lists in R
我有一个名为 samples_ID
的列表,其中包含 116 个向量,每个向量包含如下三个元素:
"11" "GT20-16829" "S27"
我想保留 116 个向量,但将这些元素组合成一个元素,就像这样
"11_GT20-16829_S27"
我试过这样的东西
samples_ID_ <- paste(samples_ID, collapse = "_")
它returns一个向量,下面只是它的一部分:
..._c(\"33\", \"GT20-16846\", \"S24\")_c(\"33\", \"GT20-18142\", \"S72\")_c(\"34\", \"GT20-16819\", \"S50\")_c...
我做错了什么?
你能帮我吗?
谢谢
一个 tidyverse 选项。
library(stringr)
library(purrr)
map(samples_ID, ~ str_c(., collapse = '_'))
# [[1]]
# [1] "11_GT20-16829_S27"
#
# [[2]]
# [1] "12_GT20-16830_S28"
数据
samples_ID <- list(c("11", "GT20-16829", "S27"), c("12", "GT20-16830", "S28"
))
在base R
中,我们可以使用sapply
sapply(samples_ID, paste, collapse="_")
另一个基本 R 选项使用 paste
do.call(paste, c(data.frame(t(list2DF(samples_ID))), sep = "_"))
或
do.call(paste, data.frame(do.call(rbind, samples_ID)), sep = "_"))
我有一个名为 samples_ID
的列表,其中包含 116 个向量,每个向量包含如下三个元素:
"11" "GT20-16829" "S27"
我想保留 116 个向量,但将这些元素组合成一个元素,就像这样
"11_GT20-16829_S27"
我试过这样的东西
samples_ID_ <- paste(samples_ID, collapse = "_")
它returns一个向量,下面只是它的一部分:
..._c(\"33\", \"GT20-16846\", \"S24\")_c(\"33\", \"GT20-18142\", \"S72\")_c(\"34\", \"GT20-16819\", \"S50\")_c...
我做错了什么? 你能帮我吗? 谢谢
一个 tidyverse 选项。
library(stringr)
library(purrr)
map(samples_ID, ~ str_c(., collapse = '_'))
# [[1]]
# [1] "11_GT20-16829_S27"
#
# [[2]]
# [1] "12_GT20-16830_S28"
数据
samples_ID <- list(c("11", "GT20-16829", "S27"), c("12", "GT20-16830", "S28"
))
在base R
中,我们可以使用sapply
sapply(samples_ID, paste, collapse="_")
另一个基本 R 选项使用 paste
do.call(paste, c(data.frame(t(list2DF(samples_ID))), sep = "_"))
或
do.call(paste, data.frame(do.call(rbind, samples_ID)), sep = "_"))