开始使用免费开始使用

用分组中位数替换 rating

在上一个练习中,您将 rating 列中的缺失值替换为该列的中位数。还能做得更好吗?当然可以!您可以把缺失值替换为同一公司巧克力的评分中位数。我们来试试吧!

已经为您预定义了一个 replace_missing() 函数,它接收两个参数——DataFrame group 和列名 col。它会尝试计算列 col 的中位数,如果成功则返回该值。如果计算中位数失败(例如没有任何值),则返回一个预定义的值。

chocolates 数据集以及 DataFramesStatistics 包已为您加载。

本练习是课程的一部分

Julia 中的数据操作

查看课程

练习说明

  • 按照 companychocolates 分组,并遍历该 GroupedDataFrame。
  • 使用 ismissing()rating 列对子集进行筛选,将缺失值替换为 replace_missing() 函数返回的值。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Group by company and iterate
for group in ____(____)

	# Subset each group using ismissing() and the rating column, assign a new value 
	group[____, ____] .= replace_missing(group, :rating)
end

println(describe(chocolates, :nmissing))
编辑并运行代码