おすすめノイズキャンセリングヘッドホンはこちら
スクレイピング

【R】無料天気予報APIを使って名古屋市の天気情報を取得する(openweathermap)

天気情報

無料で天気予報のAPIが使える「openweathermap」というものがあります。

このAPIを使って、天気予報を取得していきましょう。

自分の地域の天気でも構いません。

今回の目的・環境・流れ

目的

名古屋市(他の地域でも可)の現在の天気情報をRを使って、取得する。

環境

  • Windows10
  • Rstudio

当然、MacでもLinuxでも可です。

流れ

  1. openweathermap」に登録・アクセスキー取得
  2. パッケージの読み込み
  3. 要素を取得
  4. 天気情報を表示

APIを使って現在の天気情報を表示する

openweathermap」に登録・アクセスキー取得

openweathermap」に登録してください。

そして右上にある「API」ってとこに、自分のアクセスキーがあるので、それを控えておいてください。

パッケージの読み込み

  • RCurl
  • jsonlite

この2つを使います。

先に読み込みましょう。インストールしていない方は、インストールして読み込んでください。

パッケージ

library(RCurl)
library(jsonlite)

RCurlURLを取得したり、フォームを取得したりする
jsonlitejsonを解析して、Rで使える形にする

上手く説明できないです。また、更新します。

要素を取得

○○○○の部分にアクセスキーを入力してください。

cityは名古屋市になっています。他の地域でもできます。

要素を取得

weather_url <- “http://api.openweathermap.org/data/2.5/weather”
city <- “nagoya-shi,jp”
api_key <- “○○○○”
now_weather <- fromJSON(getForm(weather_url, q=city,appid = api_key,units=”metric”))

特にエラーが出なければ、大丈夫。

天気情報を表示

表示されなかったら、コンソールで実行してみてください。なぜか上手くいきます。

天気

now_weather$weather

id main description icon
1 803 Clouds broken clouds 04n

こんな感じなのがでます。曇りですね。

気温・気圧・湿度・最低気温・最高気温

now_weather$main

$temp
[1] 8.5

$pressure
[1] 1018

$humidity
[1] 52

$temp_min
[1] 8

$temp_max
[1] 9

気温

now_weather$main$temp

[1] 8.5

湿度

now_weather$main$humidity

[1] 8.5

まとめ

まとめ

▼ゼロから始めるR言語に戻る▼

あわせて読みたい
R言語
【随時更新】ゼロから始めるR言語【2018/3/30日更新】RとRStudioのインストールからグラフ・図・分析、テキストマイニング、スクレイピングなどをやっていきます。ネットでRを勉強したい人は是非ご覧ください。...

5日3時間ごとの天気を予測できます。需要があったら、書きます。

以上さぎのみや(@gumimomoko)でした。今日もあなたの毒を抜きました。少しは体が軽くなりましたか?

参考文献

ABOUT ME
さぎのみや
さぎのみや
「物事の本質を見抜く」をテーマに発信している19才の理系大学生ブロガー。「R」・「本」・「行動経済学」のことを中心に発信中。グミは100種類以上食べてきました。アイコンは可愛いですけど、男です。お仕事依頼はTwitterからお願いします。 →Polcaで応援Amazonほしいものリスト
ゲーム開発を手助けるメディア「Unishar-ユニシャー」
  • Unityを勉強したい
  • とりあえずUnityを使ってゲームを作りたい

このような悩みを解決してくれる、アクセス急上昇中のUnityメディア「Unishar-ユニシャー」

Unityでのゲーム開発に役立つことばかりです。

Unity専門メディア「Unishar-ユニシャー」→