gpt4 book ai didi

r - 如何创建在 R 中垂直排列的值-频率组合表

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

如何创建垂直排列的值-频率组合表,

> df = data.frame(fruit=c("apple", "banana", "cherry", "cherry", "apple", "banana", "apple", "date"));
> table(df$fruit)

apple banana cherry date
3 2 2 1

到目前为止一切顺利。但我想要这样的东西(例如,基于频率的基本操作和子集值):

Fruit   Freq
"apple" 3
"banana" 2
"cherry" 2
"date" 1

在 SQL 中,这将是 SELECT fruit, COUNT(*) AS Freq FROM df GROUP BY fruit,并且会生成一个类似于此问题起点的表:https://stats.stackexchange.com/questions/15574/how-to-convert-a-frequency-table-into-a-vector-of-values

R 中有没有一种简单的方法可以做到这一点? (或者,这是否表明心态过于“SQL”而“R”不足?)

最佳答案

data.frame(table(df))
# df Freq
# 1 apple 3
# 2 banana 2
# 3 cherry 2
# 4 date 1

或许

setNames(data.frame(table(df)), c("Fruit", "Freq"))
# Fruit Freq
# 1 apple 3
# 2 banana 2
# 3 cherry 2
# 4 date 1

关于r - 如何创建在 R 中垂直排列的值-频率组合表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13728898/

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