gpt4 book ai didi

r - R中的频率计数

转载 作者:行者123 更新时间:2023-12-04 10:25:37 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Faster ways to calculate frequencies and cast from long to wide

(4 个回答)



How do I get a contingency table?

(6 个回答)


3年前关闭。




这似乎是一个非常基本的 R 问题,但我希望得到答案。我有一个以下形式的数据框:

col1    col2
a g
a h
a g
b i
b g
b h
c i

我想把它转换成计数,所以结果是这样的。我试过使用 table() 函数,但似乎只能获得一列的计数。
    a   b   c
g 2 1 0
h 1 1 0
i 0 1 1

我如何在 R 中做到这一点?

最佳答案

我不太确定你用的是什么,但是 table对我来说很好用!

这是一个最小的可重现示例:

df <- structure(list(V1 = c("a", "a", "a", "b", "b", "b", "c"), 
V2 = c("g", "h", "g", "i", "g", "h", "i")),
.Names = c("V1", "V2"), class = "data.frame",
row.names = c(NA, -7L))
table(df)
# V2
# V1 g h i
# a 2 1 0
# b 1 1 1
# c 0 0 1

笔记:
  • 试试 table(df[c(2, 1)]) (或 table(df$V2, df$V1) )来交换行和列。
  • 使用 as.data.frame.matrix(table(df))获得 data.frame作为你的输出。 ( as.data.frame 将创建一个长 data.frame ,而不是您想要的输出格式)。
  • 关于r - R中的频率计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18895020/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com