始める無料で始める

日付フォーマット (1)

先ほど見たように、R は日付の読み取りに厳密です。思い出してください。as.Date("09/28/2008") は正しいフォーマットではなかったためエラーになりました。これを直すには、format 引数で使用しているフォーマットを指定します。

as.Date("09/28/2008", format = "%m / %d / %Y")
[1] "2008-09-29"

少し奇妙に見えるかもしれませんが、基本的な考え方は、mm/dd/yyyy という形だと R に教える文字ベクトルを定義しているということです。こうすることで、R は各要素を取り出して yyyy-mm-dd に変換できます。

指定できるフォーマットはいくつもあり、例えば次のとおりです。

  • %Y: 4桁の年 (1982)
  • %y: 2桁の年 (82)
  • %m: 2桁の月 (01)
  • %d: 月内の日を表す2桁の数 (13)
  • %A: 曜日 (Wednesday)
  • %a: 曜日の省略形 (Wed)
  • %B: 月名 (January)
  • %b: 月名の省略形 (Jan)

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

金融のための中級R

コースを見る

演習の手順

この演習では、ウォーレン・バフェットの誕生日「1930-08-30」を扱います。

  • as.Date() と適切なフォーマットを使って、"08,30,1930" を日付に変換してください(形式は「month,day,year」です)。
  • as.Date() と適切なフォーマットを使って、"Aug 30,1930" を日付に変換してください。
  • as.Date() と適切なフォーマットを使って、"30aug1930" を日付に変換してください。

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

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

# "08,30,30"
as.Date("08,30,1930", format = ___)

# "Aug 30,1930"
as.Date("Aug 30,1930", format = ___)

# "30aug1930"
as.Date("30aug1930", format = ___)
コードを編集して実行