Oracle Analytics Cloud：ニューヨーク市で人気の赤ちゃんの名前をREST APIで取得して可視化してみる

# はじめに
:::note
この記事は、2022年9月現在で使用可能なOracle Analytics Cloud（**OAC**）をもとにしています。
:::

OACの2022年9月リリースのバージョンで、REST APIによるデータの取得機能が「プレビュー」として公開されました。
この機能を使用して、REST APIで提供されているオープンデータを可視化してみたいと思います。

# 使用するオープンデータ
ニューヨーク市が公開しているデータを使わせてもらおうと思います。

https://opendata.cityofnewyork.us/

この中の、「人気の赤ちゃんの名前」というデータを使わせてもらいます。

https://data.cityofnewyork.us/Health/Popular-Baby-Names/25th-nujf

APIエンドポイントのURLを後ほど使うので、どこかにメモしておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/098fabc1-0ed6-a037-fb44-48acbeac93c2.png)

# OACの準備
## プレビュー機能の有効化
REST API経由でのデータ取得はプレビュー機能であり、有効化することで使用できます(
2022年9月現在）。
OACに管理者としてログインし、「コンソール」メニューから「システム設定」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/368b180b-39c1-e693-d18b-e5947fe3fdca.png)
「Preview」にある「Preview the Generic Rest Connector」をオンにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/670de7ea-185f-d611-6632-3f56fef5cc08.png)

## 接続の作成
一度「ホーム」に移動し、「作成」ボタンをクリックします。
「接続」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/06ffb238-89fe-8a40-0866-383f929bf42e.png)
「REST API」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/54364ba3-3a10-553a-2a2d-5084ac61e28a.png)
接続名を入力し（例：REST Opendata）、「RESTベースURL」に「https:\//data.cityofnewyork.us/resource/」と入力します。
さらに「エンドポイントの追加」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f20b8a2b-60b8-e75d-79f1-d3b824b6102f.png)
自動的に入力されるエンドポイント名をダブルクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/08dcefc8-d5f4-1dfd-5dbc-d8ab73888596.png)
名前を「Baby_Name_Female」に変更し、相対URLに「25th-nujf.json?brth_yr=2019&gndr=FEMALE」と入力します。
2019年に登録された女の子の名前にフィルタしています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f1d0c95f-f92f-f093-4d62-e9ddbaf8ec8a.png)
同様の手順でエンドポイントを追加し、名前を「Baby_Name_Male」に変更し、相対URLに「25th-nujf.json?brth_yr=2019&gndr=MALE」と入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/45dd473e-3d18-dfd3-6787-ee4b55775230.png)
「保存」をクリックします。

::: note
認証なしで誰でもデータを取得できますが、取得できるデータ量が制限されることがあります。フィルタを活用してあまり大量のデータを取得しないようにします。
ユーザ登録してアプリケーショントークンを取得すると制限が緩和されます。
:::

## データセットの作成
「データ」メニューの「接続」で、先程作成した接続をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/33db2b2b-67d4-6b94-95a7-421699e8f8ee.png)
スキーマの中の「AUTOREST」を展開し「BABY_NAME_FEMALE」を右のスペースにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/e5fe17c9-b3bb-2bcb-c3ea-1be48ff3e7a3.png)
「保存」をクリックします。![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/be64732b-f8d7-8293-48b0-ea7e656989eb.png)
「Baby Name Female」という名前で保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/893159fc-47b9-cfeb-5f72-036039b0c398.png)
「ワークブックの作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/3df8949e-1438-3f98-23b6-3ebe11512287.png)

## データの可視化
「NM」と「CNT」をコントロールキーを押しながら同時に選択します。
そのまま、右にドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ed630c03-f076-9e5d-4031-c24ebc54ec44.png)
「CNT」をクリックし、「ソート基準」を「高から低」とします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f1cb5592-fa7a-a400-0057-54b1c1321c64.png)
「CNT」をフィルタにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f22e1412-a83e-a560-79eb-0dfc688aafdc.png)
「上位下位N件」をクリックして、上位10件でフィルタするようにします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ff9a13d6-4e9c-fc73-7607-abf6bfde165b.png)
ニューヨーク市における、2019年の赤ちゃんの名前（女の子）の上位10件を棒グラフにしました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/599d3f7c-7f08-bfed-629a-70482822dafe.png)