始める無料で始める

関数を作る

あなたはウェブエージェンシーのデータアナリストとして、ウェブスクレイピング用のツールをできるだけ効率的にするために、引き続き改良を進めています。

この演習では、前の演習で作成した抽出関数を少し厳密にします。具体的には、ステータス抽出関数が返すコードが 200〜203 の範囲にない場合は、欠損値(NA)を返します。範囲内であれば、ステータスコードを返します。

purrrhttr は読み込まれています。

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

purrr で学ぶ中級関数型プログラミング

コースを見る

演習の手順

  • 左側の要素が右側の要素に含まれるかをテストする %in% 演算子を、否定して %notin% を作成します。

  • GET()status_code() を組み合わせた extract_status() 関数を compose() で作成します。

  • 提示された関数を完成させます。url のステータスコードを抽出して code 変数に代入してください。その後、この code200:203 に含まれない場合は欠損値を返し、そうでなければステータスコードを返します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Negate the %in% function 
`%not_in%` <- ___(`%in%`)

# Compose a status extractor 
extract_status <- ___(___, ___)

# Complete the function definition
strict_code <- function(url) {
  # Extract the status of the URL
  code <- ___(___)
  # If code is not in the acceptable range ...
  if (code ___ 200:203) {
    # then return NA
    return(___)
  }
  code
}
コードを編集して実行