如何修复用于绘制直方图的代码?

request20

很抱歉,如果这是基础知识,我是R的新手,从这里开始。

我想绘制以下数据的直方图(每个样本都有一个Shannon多样性指标,代表每个样本中物种的丰富度和丰度)。

这是我的数据,当前是一个数据帧(称为shannon_divplot),其中一列称为,shannon_diversity还有6个观测值。

                shannon_diversity
      Control1  3.309361
      Control2  3.664494
      Control3  3.269842
      Disease1  2.572888
      Disease2  1.530877
      Disease3  2.357401

我想绘制一个直方图,显示每个样本的香农多样性值。然后,我希望计算一种单因素方差分析,然后进行事后Tukey测试。这是我使用的代码,奇怪的hist()功能只是创建一个数据框而不是实际的图形。

 hist(shannon_divplot$shannondiversity, 
  main="Shannon Diversity",
  xlab="Samples", breaks=15)

我需要将数据框转换为此吗

         Samples     shannon_div
   1    Control1    3.309361
   2    Control2    3.664494
   3    Control3    3.269842
   4    Disease1    2.572888
   5    Disease2    1.530877
   6    Disease3    2.357401

并使用诸如

   plot(shannon_div ~Samples, 
    data=shannon_divplot, 
    main="Shannon Diversity", xlab="Sample" )

在计算方差分析时,由于未计算p值,因此也会出错。它给了我这个;

                Df Sum Sq Mean Sq
   Samples      5  3.084  0.6168

   aov.shannon = aov(shannon_div ~Samples, data=shannon_divplot)
   summary(aov.shannon)

   TukeyHSD(aov.shannon)

如果这太基础了,请再次道歉,我们将不胜感激。

编辑:如果我想比较集体控制与疾病,那么每个组会有一个以上的值,我该如何安排我的数据框或代码来做到这一点?

本·博克

您想要的通常更称为条形图:“直方图”通常保留用于显示连续变量的频率分布的图barplot()将执行您想要的操作,而无需更改数据格式:

## input data
dd <- read.table(header=TRUE,text="
     shannon_diversity
      Control1  3.309361
      Control2  3.664494
      Control3  3.269842
      Disease1  2.572888
      Disease2  1.530877
      Disease3  2.357401
")

barplot(dd$shannon_diversity,names.arg=rownames(dd),
        ylab="Shannon diversity")

您的另一个问题比较难(这是一个统计问题,而不是编程问题)。除非您在组内进行复制,否则您不能在组之间进行ANOVA。由于每次处理您只有一个数据点,因此ANOVA不会产生p值。

如果您想比较对照与疾病(每个3个观察值):

dd$grp <- sub("[1-3]","",rownames(dd))
anova(lm(shannon_diversity ~ grp, data=dd))

(在两个方差分析中进行Tukey事后测试毫无意义[我认为Tukey事后测试仍然被滥用...])

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何优化代码,以便能够使用循环在子图中绘制直方图?

如何使用元组绘制直方图

jQuery onload代码如何可重复用于缩略图2和3

如何使用正则表达式修复用于删除标点符号的无效语法错误?

如何修复用于安装Avalara的“您的要求无法解决为一组可安装的软件包”?

如何修复用于保存多张图像的代码?

如何使用gnuplot绘制直方图

绘制直方图时如何修复闪亮的应用程序中的“找不到对象'mydata'”

如何修复我的python代码以绘制图形?

修复用于Torchvision转换的随机种子

如何修复用于分割字符串的正则表达式模式

如何修复用于条件绑定的Initializer必须具有Optional类型,而不是'String'?

我应该如何修复用于求和范围的for循环代码?

如何修复用于在轮播中添加和删除项目的代码?

修复用于arraylist的适配器construtcor

如何修复用于查找出租车编号的Python If语句?

用于多路复用LED矩阵的Arduino代码优化

如何修复用户界面登录?

如何修复用于检查已安装证书的脚本

如何用nan绘制直方图?

如何修复用于发送表单数据的“连接失败:SQLSTATE[42000]:”?

如何绘制这种直方图

如何修复用于计算一列并按另一列分组的配置单元代码?

如何修复用户信息未显示在页面上

如何修复 jsxgraph 代码绘制正则多边形?

如何修复用 Xcode 编写的这段代码?在主函数中,Xcode 显示错误:此处不允许定义函数

绘制直方图的源代码说明

如何从两列绘制直方图

如何从组中绘制直方图?