1. 学ぶ
  2. /
  3. コース
  4. /
  5. R 中級

Connected

演習

lapply と無名関数

自分で関数を書いてからそれを lapply() の中で使えるようになるのは大きな前進です。ただ、1回しか使わないのにわざわざ関数を定義するのは少し大げさですよね。そこで R では、いわゆる無名関数を使えます。

これまでに、R の関数はそれ自体がオブジェクトであると学びました。つまり、関数は自動的に名前に結び付けられているわけではありません。関数を作成したときに、代入演算子を使って名前を付けることもできますが、名前を付けないことも可能です。これが無名関数です。

# 名前付き関数
triple <- function(x) { 3 * x }

# 実装が同じ無名関数
function(x) { 3 * x }

# 無名関数を lapply() の中で使う
lapply(list(1,2,3), function(x) { 3 * x })

split_low は用意されています。

指示

100 XP
  • 最初の lapply() の呼び出しを、同じ処理を行う無名関数を使うように書き換えてください。
  • 同様に、2つ目の lapply の呼び出しも、select_second() 関数の無名版を使うように変換してください。
  • select_first() と select_second() の定義は不要になるので、両方とも削除してください。