You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为数据集每行观测值添加对应宠物frequency列的技术需求

解决方案

针对你的需求,直接在原数据框中新增宠物出现频率列,这里提供两种常用的R语言实现方法:

方法一:使用dplyr(tidyverse生态)

通过分组后计算每组行数,直接在原数据上新增列,无需单独生成汇总表:

library(dplyr)

# 假设你的数据框名为df
df <- df %>%
  group_by(answer) %>%
  mutate(freq = n()) %>%
  ungroup()
  • group_by(answer):按宠物类型分组
  • mutate(freq = n()):新增freq列,赋值为当前组的行数(即该宠物的总出现次数)
  • ungroup():取消分组,避免后续操作受分组影响(可选,但推荐)

方法二:使用data.table(适合大数据集)

data.table的操作更高效,且支持直接在原数据对象上修改:

library(data.table)

# 将数据框转换为data.table(若原本就是则跳过)
setDT(df)
# 新增freq列,按answer分组计算每组数量
df[, freq := .N, by = answer]
  • .N代表当前分组的行数,by = answer指定分组依据,直接在原data.table中新增列

执行后,原数据框会新增freq列,每行对应宠物的全局出现次数,比如cat和dog的行都会显示6,完全符合你的需求。

内容的提问来源于stack exchange,提问作者Diogo Bichon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 19:45:30