Azure Machine LearningのデータセットをローカルのR環境から操作してみた。

今回は、R環境向けに公開されているパッケージ「AzureML」を導入して、ローカルのR環境からAzure Machine Learning (Azure ML)上のデータセットを操作する方法をご紹介します。
ローカルのR環境にはMicrosoft R Openを使用していますが、R for Windowsでも同じ操作で実行できます。

AzureMLパッケージのインストール

R環境にAzureMLパッケージをインストールします。
メニューバーから「パッケージ」→「パッケージのインストール」を選択します。

パッケージの一覧から「AzureML」を選択し、「OK」をクリックします。

ダウンロードされているパッケージのバージョンが「0.2.10」以上であることを確認します。
旧バージョンがダウンロードされる場合は、メニューバーの「パッケージ」→「CRANミラーサイトの選択」で「Japan(Tokyo)」を選択し、改めてインストール操作を行います。

ワークスペース資格情報の取得

AzureMLパッケージを使用するにあたり、Azure MLのワークスペースの資格情報を取得しておきます。
使用するAzure MLのワークスペースにログインした後、左ペインの「SETTINGS」をクリックし、「WORKSPACE ID」に表示されている文字列をメモしておきます。
また、「AUTHORIZAION TOKENS」タブの「PRIMARY AUTHORIZAION TOKEN」の文字列も同様にメモしておきます。

メモしたワークスペース資格情報をRで定義します。
下記のコマンドにより「AzureML」パッケージの読み込みとワークスペース資格情報の定義を行います。

データセットの操作

ここからはAzure MLのデータセット操作として、データのアップロードから確認、ダウンロード、削除までの一連の作業を行います。

まず、データのアップロードを行います。
upload.dataset関数で、下記コマンドの[データフレーム]にアップロードするデータフレーム、[データセット名]に任意の名称を付け、実行します。
[データフレーム]についてはあらかじめファイルから読み込むなどして用意しておきます。

Azure ML Studioの「DATASETS」でアップロードできていることが確認できました。

続いて、アップロードしたデータセットを確認します。
datasets関数によりワークスペースに保存されているデータセットの一覧を表示させることができます。
そのまま実行すると全リストが表示されるため、head関数で6行のみ表示していますが、一覧の中にアップロードしたデータセットが確認できました。

Azure ML上のデータセットをローカルのRに読み込むときにはdownload.datasets関数を使用します。
下記のコマンドでデータフレームにデータを読み込み、head関数で6行分だけ表示させます。

データフレームにワークスペース上のデータセットが読み込まれていることが分かります。

最後にデータセットを削除します。
delete.datasets関数で削除したいデータセット名を指定して実行します。
「Deleted」の列が「True」になっていれば削除ができています。

以上がAzureMLパッケージによるデータセット操作になります。

いかがでしたでしょうか。

今回はデータセット操作のみですが、AzureMLパッケージではRのスクリプトをAzure MLのWeb Serviceとして発行したり、Web ServiceをR環境から利用したりといった機能もあるため、RとAzure MLを相互に利用した高度な分析も可能になるのではないでしょうか。

次回もお楽しみに!!

この記事を書いた人

azure-recipe-user