1

请原谅我的问题的简单性,我对 R 非常非常陌生,并且发现我正在阅读的指南实际上并没有深入到如何做这么简单的事情(也许他们假设我应该已经知道这一点?) .

无论如何,我正在尝试使用 vioplot 在三列中绘制数据分布。我的数据文件每列一张图。数据文件已经用 read.table 读入。

忽略此处的 df[names(df)=="Fst_ceu_mkk"] 部分,因为我知道这不起作用(我在指南中找到了它)。谁能告诉我用什么代替他们从命名的列中读取数据?它们是文件中的第 3、4 和 5 列。

library(vioplot)
x1 <- df[names(df)=="Fst_ceu_mkk"]
x2 <- df[names(df)=="Fst_ceu_yri"]
x3 <- df[names(df)=="Fst_mkk_yri"]
vioplot(x1, x2, x3, names=c("CEU/MKK", "CEU/YRI", "MKK/YRI"),
   col="gold")
title("Genome-Wide FST Distribution by Population Pair")
4

1 回答 1

1

这取决于数据框中列的名称,但一般的解决方案可能是:

vioplot(df[,colnames(df)[3]], df[,colnames(df)[4]], df[,colnames(df)[5]])
于 2013-07-28T20:22:02.857 回答