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

如何在R中检查data frame指定commodity对应unit列取值是否一致

检查指定商品对应单位是否完全一致

针对你的需求,这里提供两种简单的实现方法,适合R语言初学者:

方法一:基础R语法(无需额外安装包)

直接通过筛选+唯一值统计来判断:

  1. 先筛选出commodity列值为eggs的所有行:
eggs_data <- df[df$commodity == "eggs", ]
  1. 统计unit列的唯一值数量,若数量为1则说明所有单位一致:
length(unique(eggs_data$unit)) == 1

也可以把两步合并成一行代码:

length(unique(df$unit[df$commodity == "eggs"])) == 1

运行后返回TRUE表示所有eggs对应的unit完全一致,返回FALSE则说明存在不同单位。

方法二:使用tidyverse工具包(更直观的数据分析语法)

如果你习惯用tidyverse的链式操作,可以这样做:

  1. 先加载dplyr包(如果没安装过,先运行install.packages("dplyr")):
library(dplyr)
  1. 筛选出eggs的数据,然后汇总判断单位是否一致:
df %>%
  filter(commodity == "eggs") %>%
  summarise(all_units_consistent = n_distinct(unit) == 1)

运行结果会生成一个数据框,其中all_units_consistent列的TRUE/FALSE就是判断结果。

针对你提供的示例数据,两种方法都会返回TRUE,因为所有eggs对应的unit都是1.8 kg。

内容的提问来源于stack exchange,提问作者Payam Rahmani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 23:25:20