始める無料で始める

評価をグループの中央値で置き換える

前の演習では、rating 列の欠損値を列全体の中央値で置き換えました。もう少し良くできるでしょうか?できます!同じ会社のチョコレートに限定した中央値で置き換えられます。さっそくやってみましょう。

あらかじめ用意された replace_missing() 関数は、DataFrame group と列名 col の2つの引数を取ります。col 列の中央値を計算し、成功すればその値を返します。中央値の計算に失敗した場合(値がないなど)には、あらかじめ定義された既定値を返します。

chocolates データセットと、DataFrames および Statistics パッケージは読み込まれています。

この演習はコースの一部です

Julia でのデータ操作

コースを見る

演習の手順

  • chocolatescompany でグループ化し、GroupedDataFrame を反復処理します。
  • 各グループで rating 列に対して ismissing() を使ってサブセット化し、欠損値を 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))
コードを編集して実行