我需要匹配這兩個串列,list_1并list_2根據元素的名稱按順序排列它們。實際上,我想洗掉兩個串列之間不常見的元素。我不想考慮他們的嵌套串列有什么不同。所需的輸出是兩個串列,包括兩個串列中都存在的唯一元素。兩者具有相同的結構。
list_1 <- list(ENSG0000014 = structure(list(name = c("E-1122O", "E-11EM3",
"E-11EMC", "E-1442O", "E-1132O"), ENSG = c("ENSG0000014", "ENSG0000014",
"ENSG0000014", "ENSG0000014", "ENSG0000014"), expr = c(" 9.940670e-02",
" 1.289670e-01", "-7.394904e-03", " 9.940670e-02", " 9.940670e-02"
), `1_43222779_A_G_b37` = c("1", "1", "2", "1", "0"), `1_43222856_A_G_b37` = c("0",
"0", "0", "1", "1"), `1_43223126_C_T_b37` = c("0", "1", "0",
"1", "2"), `1_43223317_T_C_b37` = c("1", "0", "0", "2", "1")), row.names = c(NA,
-5L), class = c("tbl_df", "tbl", "data.frame")), ENSG0000015 = structure(list(
name = c("E-1122O", "E-11EM3", "E-11EMC", "E-1442O", "E-1132O"
), ENSG = c("ENSG0000015", "ENSG0000015", "ENSG0000015",
"ENSG0000015", "ENSG0000015"), expr = c(" 9.940670e-02",
" 1.289670e-01", "-7.394904e-03", " 9.940670e-02", " 1.289670e-01"
), `1_43222779_A_G_b37` = c("0", "1", "0", "1", "2"), `1_43222856_A_G_b37` = c("1",
"1", "2", "1", "0")), row.names = c(NA, -5L), class = c("tbl_df",
"tbl", "data.frame")))
list_2 <- list(ENSG0000014 = structure(list(name = c("E-1122O", "E-11EM3",
"E-11EMC", "E-1442O", "E-1132O"), ENSG = c("ENSG0000014", "ENSG0000014",
"ENSG0000014", "ENSG0000014", "ENSG0000014"), expr = c(" 9.940670e-02",
" 1.289670e-01", "-7.394904e-03", " 9.940670e-02", " 9.940670e-02"
), `1_43222779_A_G_b37` = c("1", "1", "2", "1", "0"), `1_43222856_A_G_b37` = c("0",
"0", "0", "1", "1"), `1_43223126_C_T_b37` = c("0", "1", "0",
"1", "2"), `1_43223317_T_C_b37` = c("1", "0", "0", "2", "1")), row.names = c(NA,
-5L), class = c("tbl_df", "tbl", "data.frame")), ENSG0000016 = structure(list(
name = c("E-1122O", "E-11EM3", "E-11EMC", "E-1442O", "E-1132O"
), ENSG = c("ENSG0000015", "ENSG0000015", "ENSG0000015",
"ENSG0000015", "ENSG0000015"), expr = c(" 9.940670e-02",
" 1.289670e-01", "-7.394904e-03", " 9.940670e-02", " 1.289670e-01"
), `1_43222779_A_G_b37` = c("0", "1", "0", "1", "2"), `1_43222856_A_G_b37` = c("1",
"1", "2", "1", "0")), row.names = c(NA, -5L), class = c("tbl_df",
"tbl", "data.frame")))
uj5u.com熱心網友回復:
我們intersect從兩個串列中獲取 ing 名稱,然后使用它來子集list
nm1 <- intersect(names(list_1), names(list_2))
list_1_new <- list_1[nm1]
list_2_new <- list_2[nm1]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/466050.html
上一篇:連接兩個連續的串列元素
