计算R中的多个因子

时间:2015-11-22 01:32:24

标签: r

我进行了一项简单的调查,包括两个条件和十个问题,所有答案都是“是”或“否”。在R中,我有一个数据框,其中包含参与者ID,条件(1或2,作为因子),每个问题有10列(1或2表示“是”或“否”作为因子)。我想为每个参与者计算“是”或“否”的频率,所以我可以按条件进行卡方检验。但是我无法弄清楚如何让它给我参与者的“是”和“否”的计数。

我基本上想做tapply(数据$ question1,数据$ Participant,count),但不仅仅是“问题1”,而是所有10个问题。我该怎么做才能运行卡方?

2 个答案:

答案 0 :(得分:0)

你很亲密......尝试这样的事情:

data(swiss)
swiss$Fertility <- ifelse(swiss$Fertility < mean(swiss$Fertility), "yes", "no")
apply(swiss[,2:6], 2, FUN = function(x) tapply(x, swiss$Fertility, NROW))

答案 1 :(得分:0)

我们可以使用table

table(df1[1][row(df1[-1])], unlist(df1[-1]))

数据

set.seed(24)
df1 <- data.frame(ParticipantID= 1:5, matrix(sample(c('yes', 
          'no'), 5*10, replace=TRUE), ncol=10))