【问题标题】:I need to apply a Friedman Test on 2680 columns of data in sets of 8 columns我需要对 8 列集中的 2680 列数据应用弗里德曼检验
【发布时间】:2019-08-19 19:25:34
【问题描述】:

我有 2680 列数据,每组 8 列,我需要对每组应用弗里德曼检验,因此我需要应用 335 次检验。是否可以以 8 个为一组循环遍历代码?

其中一组的示例是:

    X2012    X2013 X2014    X2015    X2016 X2017 X2018
[1,] 0.000000 0.000000  0.00 0.000000 0.000000  0.00 0.000
[2,] 0.000000 3.000000  0.00 0.000000 0.000000  0.00 3.000
[3,] 3.000000 3.000000  0.00 3.000000 3.000000  3.00 3.000
[4,] 2.500000 2.333333  3.00 3.000000 3.000000  2.75 3.000
[5,] 2.600000 3.000000  3.00 2.428571 3.000000  3.00 3.375
[6,] 2.891892 2.967742  3.04 2.833333 2.777778  3.00 2.840

一些代码

require(PMCMRplus)
rank <- read.csv("C:/Projects/rank.csv",header=TRUE)
rank<-as.matrix(rank)
friedman.test(rank)

结果是这样的

Friedman rank sum test

data:  rank
Friedman chi-squared = 33.228, df = 6, p-value = 0.00000948

【问题讨论】:

  • 不太确定你想做什么......绝对可以循环所有类型的集合(和子集)......我是否正确理解所有这些数据集都在单独的文件中每列 8 列,您要循环遍历 read.csvfriedman.test
  • 数据在一个2680列的文件中。我需要遍历所有列,但是以 8 个为一组(我在上面的示例数据中删除了一个 id 列)。我只需要知道如何设置 For 循环。我也考虑过使用 Apply 函数,但我不确定这是否适用于此。
  • 所以您的意思是首先在 1:8 列上进行测试,然后是 9:16、17:24 等?
  • 是的,完全正确。我想也许可以使用 sapply 并将其应用于列,但是如何将其应用于 8 列的集合中。

标签: r loops statistics apply


【解决方案1】:

我会从您的秩矩阵中选择列的子集。比如:

...
rank <- as.matrix(rank)
for(chunk in seq(from=1, to=ncol(rank), by=8)) {
   j <- seq(from=chunk, length.out=8);
   friedman.test(rank[,j])
}

【讨论】:

    【解决方案2】:

    我花了很多时间试图解决这个问题,甚至使用 For 循环将索引增加 8,但我不相信结果。我最终只是使用了蛮力......

    require(PMCMRplus)
    require(PMCMR)
    rank <- read.csv("C:/Projects/rank.csv",header=TRUE)
    rank<-as.matrix(rank) 
    friedman.test(rank[,    2   :   8   ])
    friedman.test(rank[,    10  :   16  ])
    friedman.test(rank[,    18  :   24  ])
    friedman.test(rank[,    26  :   32  ])
    

    等 . . .

    使用 Excel 增加索引并将所有 335 个测试粘贴到 r 中是相当容易的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多