【发布时间】:2019-12-24 14:43:30
【问题描述】:
我有以下命名字符列表,可用作 ggplot2 中的调色板:
aa_palette <- c("#75041a", "#a50026", "#d73027", "#f46d43", "#fdae61", "#fee090", "#ffffbf",
"#e0f3f8", "#aad0e5", "#abd9e9", "#74add1", "#4575b4", "#313695", "#2a167a", "#989898")
names(aa_palette) <- c("Asx", "Glx", "Ser", "Thr", "His", "Gly", "Arg", "Ala", "Tyr", "Val",
"Met", "Phe", "Leu", "Ile", "Other")
但是,我的一些绘图中的变量与此列表中的名称不对应,因此我只想提取值而不需要创建一个全新的对象。我知道我可以使用[[]] 为单个值执行此操作,但我想访问每个图中的多个值,因此我正在寻找一种方法来执行此操作,而不必单独访问每个值然后c() 将它们一起访问。我尝试了以下方法:
unlist(aa_palette, use.names = FALSE)
aa_palette[c("Asx", "Glx", "Ser")]
但是这两种方法仍然返回列表中每个元素的名称。有没有一种方法可以仅访问列表中部分或全部元素的值,而不必一一[[]]它们?
【问题讨论】:
标签: r