在 R 中创建比例表时出错:表中的错误(st2.affect):尝试创建包含 \>= 2^31 个元素的表

问题描述 投票:0回答:1

我在 R 中遇到此错误表中的错误(st2.affect):尝试使用 >= 2^31 元素制作表格当我尝试使用函数(或任何其他比例函数)时

proportions(table(st2.affect), margin = 1L)

我的数据集有 20 个分类变量,5 个级别,这对于分析非常重要。我仍然尝试做没有级别的比例表并得到相同的错误。我想知道每个变量的频率和比例,并且我想创建一个包含比例的表格。

这个错误的解决办法是什么?

数据集样本:

有20个区域(可变) 每个参与者都分配了 5 个情感标签之一

 area1_affect area2_affect area3_affect area4_affect area5_affect 
 Peaceful     Peaceful     Peaceful     Tense        Peaceful       
 Other        Peaceful     Other        Other        Other           
 Peaceful     Peaceful     Peaceful     Tense        Tense           
 Peaceful     Tense        Delighted    Tense        Peaceful      
 Peaceful     Peaceful     Peaceful     Other        Other           
 Peaceful     Peaceful     Delighted    Tense        Tense        
r dataframe categorical-data proportions
1个回答
0
投票

尝试在

factor
值为
unique
的列中制作
levels=

> dat[1:5] <- lapply(dat[1:5], factor, levels=unique(unlist(dat[1:5])))
> t(sapply(dat[1:5], table)) |> proportions(margin=1L)
              Peaceful     Other     Tense Delighted
area1_affect 0.8333333 0.1666667 0.0000000 0.0000000
area2_affect 0.8333333 0.0000000 0.1666667 0.0000000
area3_affect 0.5000000 0.1666667 0.0000000 0.3333333
area4_affect 0.0000000 0.3333333 0.6666667 0.0000000
area5_affect 0.3333333 0.3333333 0.3333333 0.0000000

数据:

> dput(dat)
structure(list(area1_affect = c("Peaceful", "Other", "Peaceful", 
"Peaceful", "Peaceful", "Peaceful"), area2_affect = c("Peaceful", 
"Peaceful", "Peaceful", "Tense", "Peaceful", "Peaceful"), area3_affect = c("Peaceful", 
"Other", "Peaceful", "Delighted", "Peaceful", "Delighted"), area4_affect = c("Tense", 
"Other", "Tense", "Tense", "Other", "Tense"), area5_affect = c("Peaceful", 
"Other", "Tense", "Peaceful", "Other", "Tense")), class = "data.frame", row.names = c(NA, 
-6L))
© www.soinside.com 2019 - 2024. All rights reserved.