gpt4 book ai didi

r - 添加具有另一个计数的列

转载 作者:行者123 更新时间:2023-12-02 05:50:18 25 4
gpt4 key购买 nike

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





Count number of rows per group and add result to original data frame

(10 个回答)


6年前关闭。




我有一个数据框 df看起来像下面的gender列是 factor有两个级别:

gender    age
m 18
f 14
m 18
m 18
m 15
f 15

我想添加一个名为 count 的新列这只是反射(reflect)了 gender 的次数level 出现在数据框中。因此,最终,数据框将如下所示:
gender    age    count
m 18 4
f 14 2
m 18 4
m 18 4
m 15 4
f 15 2

我知道我可以做到 table(df$gender)这给了我该因子出现的次数,但我不知道如何将这些结果转换为 df 中的新列.我想知道如何使用 table功能——或者有没有更好的方法来实现我的新专栏?

最佳答案

你可以试试 ave :

# first, convert 'gender' to class character
df$gender <- as.character(df$gender)

df$count <- as.numeric(ave(df$gender, df$gender, FUN = length))
df
# gender age count
# 1 m 18 4
# 2 f 14 2
# 3 m 18 4
# 4 m 18 4
# 5 m 15 4
# 6 f 15 2

更新@flodel 的评论 - 谢谢!
df <- transform(df, count = ave(age, gender, FUN = length))

关于r - 添加具有另一个计数的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20275325/

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