如何使用由两个以上变量定义的数据子集运行shapiro测试

埃贝尼托

我有一个结构的数据框:

str(Ehen)
'data.frame':   412 obs. of  5 variables:
 $ DATE      : Date, format: "2012-09-11" "2012-09-19" ...
 $ Population: Factor w/ 9 levels "Brathay","Clun",..: 4 4 4 4 4 4 4 4 4 4 ...
 $ Fish      : Factor w/ 3 levels "C","S","T": 2 2 2 2 2 2 2 2 2 2 ...
 $ Length    : int  NA 70 70 80 70 60 70 60 60 70 ...
 $ Width     : int  NA 60 50 70 60 50 60 50 50 60 ...

我要测试的是,长度通常按每个人群分配,按日期和鱼类将数据分组。

我试过了:

aggregate(Ehen$Length ~ Ehen$Fish + Ehen$DATE, FUN =shapiro.test) 


  Ehen$Fish  Ehen$DATE Ehen$Length
1          C 2012-09-19   0.7975819
2          S 2012-09-19   0.8164554
3          S 2012-09-25   0.7935195
4          S 2012-10-04   0.9006435
5          C 2012-10-09   0.8411583
6          S 2012-10-09    0.913051
7          S 2012-10-11   0.8525953
8          C 2012-10-18   0.9084524
9          S 2012-10-18   0.9415459
10         C 2012-10-24   0.9592422
11         S 2012-10-24   0.9774688
12         C 2012-11-02   0.9536037
13         S 2012-11-02   0.9607917
14         C 2012-11-12   0.9570341
15         S 2012-11-12   0.9728865

这或多或少是我想要的,但是,如何获得Shapiro检验的p值而不是W值?

我可以逐日约会:

shapiro.test(Ehen$Length[Ehen$DATE=="2012-10-24"])
data:  Ehen$Length[Ehen$DATE == "2012-10-24"]
W = 0.9761, p-value = 0.2868

但这还不够...所以我尝试了:

lapply(split(Ehen$Length, Ehen$Fish, drop = TRUE),shapiro.test)

$C
        Shapiro-Wilk normality test

data:  X[[1L]]
W = 0.9219, p-value = 1.548e-07

$S
        Shapiro-Wilk normality test

data:  X[[2L]]
W = 0.9201, p-value = 2.056e-10

但是,我不知道如何将Date作为变量包含在测试中以对数据进行子集化。

我可能一直都错了,或者我可能已经接近答案了!!先感谢您

阿克伦

你可以试试

res <- aggregate(cbind(P.value=Length) ~ Fish + DATE, Ehen,
             FUN = function(x) shapiro.test(x)$p.value)

head(res,3)
#  Fish       DATE    P.value
#1    C 2012-09-19 0.25510132 #####
#2    S 2012-09-19 0.11941675
#3    C 2012-09-20 0.04459457

shapiro.test(Ehen$Length[Ehen$DATE=='2012-09-19' & Ehen$Fish=='C'])

#   Shapiro-Wilk normality test

#data:  Ehen$Length[Ehen$DATE == "2012-09-19" & Ehen$Fish == "C"]
# W = 0.9414, p-value = 0.2551 ######

数据

set.seed(25)
Ehen <- data.frame(DATE= sample(seq(as.Date('2012-09-19'), length.out=10,
   by='1 day'), 412, replace=TRUE), Fish= sample(c("C", "S"), 412,
   replace=TRUE), Length=sample(c(NA,60:80), 412,replace=TRUE))

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将反斜杠命令与两个以上变量一起使用?

来自分类Dev

std :: pair中有两个以上变量

来自分类Dev

如何使用 sed 匹配由两个以上边界定义的多行范围?

来自分类Dev

使用两个变量对数据进行子集并汇总

来自分类Dev

使用两个变量对数据进行子集并汇总

来自分类Dev

在两个以上数据框内的相同变量的嵌套列表内循环相关性测试

来自分类Dev

如何使用涉及两个因子变量的天和值的多个条件来子集数据框

来自分类Dev

如何使用 Appium 运行需要两个设备的测试

来自分类Dev

如何使用定义持续时间的两个日期时间变量重新索引数据帧

来自分类Dev

如何使用反射来运行两个变量

来自分类Dev

使用lapply基于两个或多个因子变量对数据框进行子集

来自分类Dev

如何使用ajax发布两个变量以保存数据

来自分类Dev

如何使用ajax发布两个变量以保存数据

来自分类Dev

如何使用两个变量的值的组合创建可扩展的函数以将数据帧子集化为数据帧列表

来自分类Dev

如何同时运行两个以上的线程

来自分类Dev

如何将反斜杠命令与两个以上的变量一起使用?

来自分类Dev

如何基于两个条件对数据进行子集

来自分类Dev

如何对两个不同的数据库运行集成测试?

来自分类Dev

如何从外部程序集运行测试

来自分类Dev

如何使用两个变量重塑

来自分类Dev

如何使用Linq将两个以上的表分组

来自分类Dev

如何使用IF针对一个变量测试两个字符串

来自分类Dev

如何使用IF针对一个变量测试两个字符串

来自分类Dev

如何根据选择查询的子集运行计数

来自分类Dev

如何使用C#从MS Access数据库的两个以上表中检索数据

来自分类Dev

如何创建循环或函数以循环浏览两个包含变量的向量列表,以在响应上运行KS测试

来自分类Dev

在变量名称由两个变量组成的bash中,如何导出变量?

来自分类Dev

如何使用两个规则有效地将数据帧子集化为列表列表

来自分类Dev

如何传递两个或多个变量以在Puppet中定义

Related 相关文章

  1. 1

    如何将反斜杠命令与两个以上变量一起使用?

  2. 2

    std :: pair中有两个以上变量

  3. 3

    如何使用 sed 匹配由两个以上边界定义的多行范围?

  4. 4

    使用两个变量对数据进行子集并汇总

  5. 5

    使用两个变量对数据进行子集并汇总

  6. 6

    在两个以上数据框内的相同变量的嵌套列表内循环相关性测试

  7. 7

    如何使用涉及两个因子变量的天和值的多个条件来子集数据框

  8. 8

    如何使用 Appium 运行需要两个设备的测试

  9. 9

    如何使用定义持续时间的两个日期时间变量重新索引数据帧

  10. 10

    如何使用反射来运行两个变量

  11. 11

    使用lapply基于两个或多个因子变量对数据框进行子集

  12. 12

    如何使用ajax发布两个变量以保存数据

  13. 13

    如何使用ajax发布两个变量以保存数据

  14. 14

    如何使用两个变量的值的组合创建可扩展的函数以将数据帧子集化为数据帧列表

  15. 15

    如何同时运行两个以上的线程

  16. 16

    如何将反斜杠命令与两个以上的变量一起使用?

  17. 17

    如何基于两个条件对数据进行子集

  18. 18

    如何对两个不同的数据库运行集成测试?

  19. 19

    如何从外部程序集运行测试

  20. 20

    如何使用两个变量重塑

  21. 21

    如何使用Linq将两个以上的表分组

  22. 22

    如何使用IF针对一个变量测试两个字符串

  23. 23

    如何使用IF针对一个变量测试两个字符串

  24. 24

    如何根据选择查询的子集运行计数

  25. 25

    如何使用C#从MS Access数据库的两个以上表中检索数据

  26. 26

    如何创建循环或函数以循环浏览两个包含变量的向量列表,以在响应上运行KS测试

  27. 27

    在变量名称由两个变量组成的bash中,如何导出变量?

  28. 28

    如何使用两个规则有效地将数据帧子集化为列表列表

  29. 29

    如何传递两个或多个变量以在Puppet中定义

热门标签

归档