ラベル R の投稿を表示しています。 すべての投稿を表示
ラベル R の投稿を表示しています。 すべての投稿を表示

2020年8月23日日曜日

Dataiku DSS Ver8.0 新機能:Dataiku Applications

 

Dataiku DSS Ver8.0 がリリースされました。

今年の3月中旬にリリースされたDataiku DSS Ver7.0から、更に機能が追加された
Dataiku DSS Ver8.0が7月中旬にリリースされました。
ちょっと調べたのですが、おそらく世界でも早い方の機能レビューではないでしょうか。

詳細については、以下のリンクを参考にしていただくとして、数回に分けてVer8.0の機能をいくつかレビューをしていきます。

DSS Ver8.0 New Features

今回は作成されたFlowを使って、簡単にビジネスユーザーが利用するシンプルなアプリケーションを作成できる、Dataiku Applicationsについて説明をします。

Dataiku Applications とは

Dataiku Applicationとは、これまで作成されてきたDSS Projectをシンプルなアプリケーションに変換できる機能です。

実際のビジネス現場で利用される場合、依頼された現場の方や実際にデータを利用したい方へ分析した結果・機械学習を使った結果を提供されるかと思います。また、新しいデータセットを使って同じモデルの結果を得たいという要望も出てくるかと思います。

そういった要望を叶えるための機能がDataiku Applications になります。

使い方としては、以下のステップで作成することが可能です。

  1. Dataiku Applications 化したいプロジェクトを選択
    今回は、前回作成利用した、「キャンペーンに応募する顧客判定」のプロジェクトを利用します。

    Flowを開いて、ツールバーにあるApplication Designerを選択します。そうすると、Dataiku Applications を設定できる画面に遷移します。





  2. 利用者に行わせたいアクションを検討し、選択
    この画面で、
     -「新しいデータセットを選択できる」
     -「モデルの実行を行う」
     -「結果をDashboardで閲覧できる」
     -「アウトプットをダウンロードできる」
    の4つをユーザーが利用できるようにします。
    この画面の下の方に行くと、「ADD TILE」というボタンが表示されており、それを選択すると、選択できるアクションを見ることができます。

    ここでは、上記アクションを行うために、以下のTILEを選択します。
     -「新しいデータセットを選択できる」 → Upload file in dataset(Customer用)
                        → Upload file in dataset(Orders用)
     -「モデルの実行を行う」       → Run scenario
     -「結果をDashboardで閲覧できる」   → View dashboard
     -「アウトプットをダウンロードできる」→ Download datase


    それぞれ該当のアクションと対象となるデータセットなどの指定をしますと、準備完了です。

  3. Dataiku Applicationsの結果を確認。
    右上にある、SAVEボタンをクリックして一度保存します。その後、その隣りにあるTESTボタンをクリックすると、以下のような画面が表示されるかと思います。

    この画面のタイトルと説明はApplication Designerから自由に変更することが可能です。この画面では、先程指定した、ファイルのアップロード、シナリオの実行、Dashboardの閲覧、最終アウトプットデータのダウンロードが設置されています。

    実際にユーザーへの配布については、ログインした後のトップページにApplicationsという項目ができておりますので、こちらからアクセスしてもらってください。

今回は、Dataiku Applicationsで実際のデータを利用するユーザーに向けてのシンプルなアプリケーションを作成する方法を紹介してみました。

実際の現場では、ユーザー側から様々な要望(データを新しくしたいので、もう一度モデルを回してみてほしい、どのようにProjectを使えばよいかわからないから教えてほしい、結果のDashboardがみたい等々…)などの問い合わせをこちらのアプリケーションを上手に設定することで、一度に解決ができるようになるかと思います。ぜひ使ってみてください。

聞くよりも実際に触ってみたほうが実感が湧くかと思いますので、ぜひ触ってみてください。フリーエディションはずっと使えて、機能的にも十分に利用することが可能です!

[フリーエディション]

2020年8月17日月曜日

Dataiku DSS Ver8.0 新機能:Model Document Generation

 

Dataiku DSS Ver8.0 がリリースされました。

今年の3月中旬にリリースされたDataiku DSS Ver7.0から、更に機能が追加された
Dataiku DSS Ver8.0が7月中旬にリリースされました。
ちょっと調べたのですが、おそらく世界でも早い方の機能レビューではないでしょうか。

詳細については、以下のリンクを参考にしていただくとして、数回に分けてVer8.0の機能をいくつかレビューをしていきます。

DSS Ver8.0 New Features

Model Document Generation

前回はFlow Zonesを紹介しました。今回は、 モデルの結果をMS Wordドキュメントにエクスポートできる、Model Document Generationを紹介します。

データサイエンスではモデル結果を関係者にわかりやすく示す必要があります。Dataiku DSSでもモデル結果を理解しやすいように表示してくれていますが、この結果を他の人(DSSユーザー以外)にも説明をしたい場面もあるはずです。
そのときに利用できるのが、この ”Model Document Generation” です。

実際にダウンロードできるのは、Visual Analysisで結果をダウンロードしたいモデルを選択します。

モデルを選択し、画面右上の「ACTION」をクリックすると、「Export Model Documentation」が表示され、該当のモデル結果がMS Word形式でダウンロードできます。
ダウンロードした結果は以下のようなMS Word形式で表示されます。今回は、Density Chartについて比較をしてみました。

Webの結果では、こんな感じで表示されます。左ペイン中のメニューがMS Word形式にエクスポートしてくれるイメージです。

右にWeb画面のDensity Chartが見られるかと思います。左側はROCカーブでこちらもWeb版に結果が存在しています。

これら以外でも多くのモデル結果をMS Word形式でエクスポートしてくれます。

惜しむらくは、PDF、RMarkdownなど他の形式でのエクスポート機能が充実してくれると嬉しいかと思います。今後のEnhancementを待ちましょう。

ちなみに、こちらはMS Wordのテンプレートを作成してUploadしておくと、それに合わせた結果をエクスポートしてくれる便利機能もあるようです。

聞くよりも実際に触ってみたほうが実感が湧くかと思いますので、ぜひ触ってみてください。フリーエディションはずっと使えて、機能的にも十分に利用することが可能です!

[フリーエディション]




2020年8月15日土曜日

Dataiku DSS Ver8.0 新機能:Flow Zones

 

Dataiku DSS Ver8.0がリリースされました

今年の3月中旬にリリースされたDataiku DSS Ver7.0から、更に機能が追加された
Dataiku DSS Ver8.0が7月中旬にリリースされました。
ちょっと調べたのですが、おそらく世界でも早い方の機能レビューではないでしょうか。

詳細については、以下のリンクを参考にしていただくとして、数回に分けてVer8.0の機能をいくつかレビューをしていきます。

DSS Ver8.0 New Features

Flow Zones

まずひとつ目に紹介するのは、「Flow Zones」です。
これは、Flowに並べられた各オブジェクトが複雑化したり、長くなったりしたときに、グループ化してFlowの中で各処理がどのような意味があるのかをグループ化できる機能になります。

例えば、以下のようなFlowがあった場合、データをインポート、データ整形、機械学習(学習、スコアリング)がわかりにくい場合があります。このようなステップをFlow中に追加できる機能になります。(すでに作成されているFlowに対しても追加ができます)

実際にやってみよう

Dataiku DSSでこのようなFlowを作成してみました。このFlowは、顧客マスタと注文履歴と判定したい顧客リストを使って、キャンペーンに反応する顧客かどうかを判定するためのFlowになります。
ただ、このFlowだけだと一見してどの部分がどのような役割を果たしているのかが、少しわかりにくいのではないでしょうか。特にDSSに慣れていない方は理解するのに少し時間がかかるかと思われます。

そこで、実際にこのFlowを新機能のFlow Zonesを使って分けてみましょう。

[既存のFlow]

Flow Zones を作る際には、Flow内右上の「+ZONE」をクリックすると、以下のような画面が出てきます。ここでは、Flow Zoneの名前を決めます。この画面では、データインポートの部分のグループを作成したいので、「Data_Import」という名前をつけます。
同じように、データハンドリングのFlow Zoneの「Data_wrangling」、機械学習部分の「Machine Learning」というFlow Zoneを作成してます。

それぞれFlow Zoneを作成した後は、それぞれのオブジェクトをそれぞれのFlow Zoneに所属させます。オブジェクトを選択すると、右ペイン内に以下のようなパートが表示されます。
オブジェクトを選択した後、「Move」を選択すると、指定したFlow Zoneにオブジェクトが移動します。

この作業を今回作成した「Data_Import」、「Data_wrangling」、「Machine Learning」のそれぞれ実行します。

そうすると、これまでFlowとして一つにまとまっていたオブジェクトが、それぞれのFlow Zonesに別れたことがわかるかと思います。
これで、初めてこのProjectに触る人や、あとで修正したい人にとってもFlowがわかりやすくなったかと思います。

聞くよりも実際に触ってみたほうが実感が湧くかと思いますので、ぜひ触ってみてください。フリーエディションはずっと使えて、機能的にも十分に利用することが可能です!

[フリーエディション]




2020年3月29日日曜日

Dataiku Version7 新機能 : Interactive Statistics

Dataikuの最新バージョンがリリース

2020年3月16日週にDataikuの最新バージョンがリリースされました。
大きな目玉は、
  • Interactive Statistics
    • データセットの統計値(代表値)の算出・検定・分布・主成分分析・相関行列をワンクリックで表示
  • Enhanced Git Integration for Projects
    • Git(Github)との連携強化
  • Individual Prediction Explanations
    • 予測した各個別のデータがどのような変数から影響を受けたかを示す。
      (Interpretable Machine Learning:説明できる機械学習)
などです。

これまでは、Data Wringling(データ加工)やAutoML(自動的に適切なモデルを選択してくれる)などの特徴的だったのですが、今回のリリースではここ数ヶ月でトレンドとなっている「説明できる機械学習」や「Git(Github)との連携」などが組み込まれており、現場で機械学習を使う人、結果を解釈して判断をするマネージャー以上の人達にとっては嬉しい機能が盛り込まれています。

これから一つずつどのような機能がリリースされたのかを紹介していきます。

Interactive Statistics

これまでのDataikuでは、既存のデータセットの分析(代表値・分布など)を取得しようとすると、カラムレベルでAnalyzeをしたり、Chart タブを使いグラフを作成して、使おうとしているデータの特徴を掴む必要がありました。これらの機能は嬉しい反面、一つずつ選択する必要があり、面倒な部分もありました。

今回のバージョンアップで、そういった面倒な作業を行わなくても統計値を集計できるようになりました。また合わせて検定も行えるように実装がされています。

Statisticsの種類

これからは、みなさん大好きな iris(アヤメのがくの長さ、花びらの長さのデータ)を使って紹介します。ちなみにこのデータセットはRStudio から AWS S3に保存して、Dataikuで読み出しています。RStudioからAWS S3へのエクスポートの仕方はこちらの記事を参考にしてください。

データセットをインポートした後、インポートしたデータセット開くと、画面上のメニューに「Statistics」が追加されています。ここからInteractive Statisticsを実行ができます。


このStatisticsをクリックすると、どの分析をするかを聞かれます。
水色背景で記載をどのような分析ができるかを追記しています。


Univariate Analysis

まずは、Univeriate Analysis(一変量統計)を選択してみましょう。
Univariate Analysisを選択すると、以下のように変数を選択することができます。
この場合はすべての変数を選択しています。(左側の1 available variables から右側のVariables to describeに各変数をドラッグアンドドロップできます)
また、Optionsでは作成するチャートを選択できます。

選択後、右下の「CREATE CARD」をクリックすると実行され、以下のようなチャートが自動的に生成されます。数値項目については箱ひげ図や四分位点、Percentileが表示され、テキスト項目(グルーピングに使う項目)は棒グラフとFrequecyが表示されます。

また、あるグループごとで集計した結果を見たい場合もあるかと思います。
その際は、Splitを使います。
Splitを使ってみると、グループごとで集計して統計値を返してくれます。
今回はirisのデータの中のSpeciesを使ってグループごとに集計をしています。
同じチャートがこの後設定した数値変数ごとで続きます。


RやPythonを使うと一つ一つの集計やチャート作成にコードを作成する必要がありますが、このStatisticsを使うとコードを書かずともこのような数字・チャートを作成することが可能です。

Statistical Test

次はStatistical Test、日本語だと「検定」になります。今回のバージョンアップで利用できるようになった検定方法は以下となります。


今回は比較的よく使うであろう、t検定(Two-sample test > Student t-test)を行ってみます。二つのグループの平均値に違いがあるかどうかを検定します。

Two-sample test から Student t-test を選択すると、以下のような画面が表示され、それぞれ変数を選択し、比較したいグループを入力します。
今回は、分析対象として、Sepal.Length を選択し、比較カテゴリはSpecies内のsetosa と versicolor を選択しています。この2つのグループのSepal.Lengthの平均値が異なっているかどうかを検定します。
右下のCREATE CARDをクリックすると、以下のような結果が表示されます。
一番下に結果が表示され、この2つのグループの平均値は異なるということがわかりました。

Correlation Matrix

相関行列です。統計を始めたばかりの人にはあまり馴染みが無いかもしれませんが、相関係数を行列形式で表示し、どれとどれの変数の相関が強いのかをひと目で分かるものです。
Correlation Matrixを選択すると、以下のような画面からスタートします。
相関行列を作成したい変数をVariablesに移したら、右下のCREATE CARDをクリックします。そうすると、以下のような相関行列が表示されます。

こちらもUnivariate Analysisと同様にSplitをすることができます。
以下は上で作成した相関行列をSpeciesで分割した結果となります。種類によって相関行列の値が異なることがひと目で分かるかと思います。

Principal Components(主成分分析)

最後は、主成分分析です。変数をまとめて(縮約)して解釈をしやすい形にしてくれる分析手法になります。
Principal Components を選択し、どの変数を対象にするかを選びます。今回は数値項目すべてを選択しました。

必要な変数を選択したら、いつものように右下のCREATE CARDををクリックすると、以下のようなチャートが作成されます。
PCAを行ったことがある方はご存知かもしれませんが、左側のチャートが第一主成分 〜第四主成分までを表し、線グラフが累計割合を示しています。
下のグラフは各変数ごとに第一主成分〜第四主成分がどのような構成になっているかを示しています。

これまで紹介した一部の内容が一つのWorkSheet 単位にまとめられます。このWorkSheetは新規に追加したり、複製させることができます。


また他の人とデータセットの分析結果を共有したいと場合は、「︙」 をクリックし、Publishが出てくるので選択します。そうすると、どのDashboardに掲載するかの画面が表示されます。選択し終わると、今回作成した分析結果をDashboardに取り込むことができ、共有することが可能です。


 今回作成した結果(PCA・t検定・一変量統計の結果)を一枚のDashboardに取り込むことができました。これを他のユーザーと共有することで、どのようなデータセットなのかが他のユーザーもひと目で分かります。

まとめ

今回のバージョンアップの目玉の一つである、Interactive Statistics はこれまでRやPythonで一つずつコーディングが必要だった作業を、変数選択するだけで集計・チャートを作成してくれるだけでなく、検定や主成分分析もサポートしています。

データサイエンスで大事な作業として、分析対象のデータがどのような分布をしているかを理解するのが大事で、この機能を使うことで探索の時間が短縮されるのではないかと感じました。

次回以降は残り2つの紹介をしていきます。

2020年3月28日土曜日

RStudioからAWS S3 へオブジェクトをUpload、Download

RStudioからAWS S3へはいつかは試してみなければと思いながらだいぶ日が経ってしまったが、やっと試せるときがきたので、まとめてみました。






























IAMを使って認証情報を作成する

まずはともあれ、AWSのアカウントが無いと始まりません。AWSのアカウントを作成して、IAMにアクセスしてAWS S3にアクセスできるユーザーを作成してください。
この際、重要になるのが「AWS_ACCESS_KEY_ID」と「AWS_SECRET_ACCESS_KEY」です。これらの情報はこの後で使います。

{aws.s3}パッケージとSys.setenvへの登録

次にRStudio上で、{aws.s3}パッケージをインストールします。(install.packages() , library()を利用してください)
その後、上記で取得したAIMの情報を以下の内容に追記します。


Sys.setenv("AWS_ACCESS_KEY_ID" = "mykey",
           "AWS_SECRET_ACCESS_KEY" = "mysecretkey",
           "AWS_DEFAULT_REGION" = "us-east-1")

AWS_DEFAULT_REGONはAWS S3はグローバルで共通になっており、特にしてする必要はありまませんが、私はEC2を使う際に利用しているリージョンを指定しました。

接続できているか確認

うまく接続できているかを確認してみましょう。
RStudio上で、AWS S3のバケットがうまく取得できているかを確認します。

bucketlist()

の関数を実行すると、IAMで作成したユーザーがアクセスできるバケットのリストが参照されているはずです。

RオブジェクトのUpload

ここまでくれば、あとは実際にRの関数を適応していくだけです。

まずはみんな大好きirisデータフレームをAWS S3へUploadしてみます。
コマンドは以下を実行します。

s3save(iris, bucket = "[bucket_name]" , object = "iris.Rdata")

そうすると、AWS S3画面上に.Rdata ファイルが見えるはずです。
この中にirisが入っています。

RオブジェクトのDownload

次に、AWS S3にあるRオブジェクトをRStudioの環境にダウンロードします。

s3load("iris.Rdata" , bucket = "[bucket_name]")

この関数でirisが入っている.Rdataをダウンロードし、RオブジェクトがRStudioの環境にロードされます。

ローカルにあるデータファイルのUpload

RStudioで作業をしていると、CSVファイルなどの様々なファイルを作成することがあるかと思います。その場合もこのパッケージを使えばAWS S3へファイルをアップロードが可能です。

irisをwrite.csv()でCSVファイルに作成をしておいて、以下のコマンドを使ってCSVファイルをアップロードします。

put_object(file = "iris.csv" , object = "iris_from_RStudio.csv", bucket = "[bucket_name]")

file= にはアップロードしたいファイル名、object = には、AWS S3のオブジェクト名、bucket = にはAWS S3のバケット名を指定します。
今回はfileとobject の名前は異なってつけています。AWS S3の画面にはobject の名前が表示されます。

AWS S3にあるデータファイルのDownload

次にAWS S3 のデータファイルをダウンロードします。

save_object("iris_from_RStudio.csv", file = "[file path]" , bucket = "[bucket_name]")

関数がsave_objectとなっているので、わかりにくいですが、この関数を使って、AWS S3 → ローカルのファイルパスにファイルをダウンロードします。ファイル名を指定するだけだと、getwd() で表示されるディレクトリに保存されます。


2020年2月21日金曜日

Gartner Magic Quadrant Data Science and Machine Learning PlatformでDataikuがLeaderに!

Gartner Magic Quadrant

毎年この季節になると、Gartnerという調査会社がITの各領域(データベースやビジネス・インテリジェンスツール等)のレポートを発行しています。そのレポートが Gartner Magic Quadrant です。

このレポートの Data Science and Machine Learning Platform という領域でDataiku がはじめてリーダーの位置になりました。


何がスゴイのか?

何がスゴイかというと、業界の中でも「ビジョンの完全性」、「実行能力」を兼ね備えているこの領域でもリーダーの会社です、ということがGartnerによって確認されたということです。

過去はどうだったのか?

2018年11月時点のレポートを見てみると、Dataikuはまだ「CHALLENGER」枠に入っていました。そこから2019年11月時点では「LEADER」の位置に来ています。
1年足らずでLEADERの評価を得られるようになってるようです。


2018年、2019年と比べてみると一目瞭然ですが、全体的に「ビジョンの完全性」の方向によってきていて、「実行能力」があるかないかで別れているようです。

この数年でData ScienceやML Opsなどで「何をしなければいけないかの課題」が明確化されつつあり、それに対して各社対応しているため、ビジョンの完全性に寄ってきているのではないかと推測します。




2020年1月19日日曜日

Dataikuを使ってみよう #6 DataikuでRを使う


これまでの内容はDataikuが標準で準備されている機能を使ってきました。
ただ、どうしても足りない機能やアルゴリズムを利用したいケースが出てきます。その場合、R(Python)を使って機能を追加させることができます。
Rのコードを実行できるだけでなく、RMarkdownやShiny、NoteBookなど近年利用が増えている機能も対応ができます。

今回はDataikuでのR言語の機能がどのように使えるのかをご紹介します。

R環境のセットアップ

RをDataikuでも利用できることはできますが、Dataikuの追加機能が多く、依存関係があるので、最初から利用できるわけではありません。環境を追加する必要があります。
R integration
https://doc.dataiku.com/dss/latest/installation/r.html
こちらを見ていただき、必要に応じてAdminユーザー(管理者)に環境を準備してもらってください。R環境を作る際にAdminユーザーのコマンド(再起動とか)が必要になるためです。

Code RecipeでRを書いてみる

では、実際にRコードを書いて見ましょう。

処理をかけたいデータセットを選択して、右ペイン中(Code Recipe)の「R」を選択してください。
その後、これまでと同様にデータセットを指定する画面が出てきます。
これまで通り、Outputのデータセット名を指定します。指定したら右下のCREATE RECIPEをクリックします。

そうすると、以下の様なコーディング画面が出てきます。
この処理は最初の10行を選択するコードを書いています。 合わせて集計パッケージのdplyrを使ってデータを処理しています。
このコードを画面下にある「RUN」をクリックして実行をすると、10行のデータが作成されます。
このように、Rコードを組み込むこともできます。ただし、Code RecipeでRコードを記載する際には、Dataiku独自のフォーマットに最初インポートする必要があります。また、Dataiku上で後続の処理にわたす際には最終的にData.Frameの形にすることが必要です

その例として、「Rで線形回帰した結果をDataikuで再利用できるようにする」というシナリオでコードを実行してみます。

まずは以下のように線形回帰を行う関数を自実行します(lm関数)。加えて、Broomパッケージ内のTidy関数を利用して係数やp値をData.Frameに変更を行い、Dataikuで扱えるデータの形に変更をしています。

これを実行することで、Dataiku上で後続処理にこの結果データを渡すことができます。

また、サンプルコードも用意されていて、分からなくなった場合はこちらを見ながら書いてみましょう。(コードエディタの右上にあります)

内容的には、Rのdplyrを利用されたことがある方であれば、なじみ深い関数がみられるのではないかと思います。Rを使われたことがない方でもサンプルコードを見てやりたいことが記述できるはずです。

NotebookでRを書いてみる

ここまでは、Code Recipeを使ってR言語をDataikuの中に組み込んでみました。Code Recipeはあくまでも処理フローの中で利用されるため、「データ探索的」な使い方に向いていません。
そこで、DataikuではR言語が利用できるNotebookを用意しています。

分析したい対象のデータセットを選択し、右ペイン中の「LAB」をクリックします。
そうすると、以下の画面が表示されます。今回はRのNotebookを使いたいので、右ペイン中の「Code Notebooks」の中の「New」を選択してください。
そうすると、Pythonはじめとして、Dataikuで利用できる他の言語が選択できますので、今回はRを選んでください。その下にどのデータセットを利用するかが聞かれます。一番上を選択してください。(フリーエディションでは、sparklyr や、SparkR は残念ながら利用できません)
右下の「CREATE」ボタンをクリックすると、以下のような画面が出てきます。
そう、これは実はJupyter Notebookです。 カーネルがRとなっていまして、R言語も利用が可能です。
RStudioと同様にパッケージをインストール、利用もできます。
今回は、dplyrを使い集計を行い、ggplot2を使った可視化を行ってみました。


これらの結果は、Flowには表示されることはなく、ツールバー内のNotebooksの中に入るので、注意してください。



また、書かれたコードは共有が可能なので、右上のPublishボタンからDashboard等へ表示させてもよいでしょう。



RMarkdownを書いてみる

続いて、DataikuではRMarkdowもサポートをしています。 PackageはRMarkdownを利用しますが、Linuxの場合はPandocが入っていないケースもあるため、その場合はサーバー管理者に伝えてPandocをインストールしてもらいましょう。
私の利用環境は AWS EC2のLinuxにインストールをしたため、Pandocが入っておらず、RMarkdownが利用できるようになるまで、セットアップに時間がかかりました。
RMarkdown Reports
https://doc.dataiku.com/dss/6.0/code-reports/rmarkdown.html
インストールが完了したら、実際にやってみましょう。

ツールバーより、RMarkdownを選択してみると、以下のような画面が表示されます。今回はこのProjectので初めてのRMarkdownになるため、「CREATE YOUR FIRST REPORT」をクリックしましょう。
次の画面では、RMarkdownのレポート名を付けます。上の選択肢は、一番上のサンプルコードを入力した状態で表示させます。終わったら、右下の「CRATE」ボタンをクリックして実行します。
次の画面では、RMarkdownのサンプルコードと共に画面が表示されます。
左ペインがRMarkdownのコード、右ペインが結果になります。

左上の「FORCE BUILD]をクリックしたら、右ペインに結果が表示されます。(下のスクリーンショットは実行した後になります)


Shinyも利用できる

Rコードの実行、Jupyter Notebookでの実行、Rmarkdownときたら、今後はShinyでしょう。
Shinyとは??と思われている方はこちらを一読ください。

ゼロから作るShiny~001: Shinyってなんだ~
https://qiita.com/Anonymous1989/items/858db4ea2483d40d40ad
Shinyは簡単にいうとR言語で構築ができるWebAppで、Rの計算結果をシミュレーションできたり、地図を使ってマップ上にデータをプロットしたり等、いろいろなことが可能です。

では、DataikuではどのようにこのShinyを作れるか見ていきましょう。

まずは、ツールバー上に「WebApps」がありますので、こちらを開きましょう。
何も作成されていない場合は、以下のような画面が表示されます。「CREATE YOUR FIRST WEB APPS」をクリックしてみましょう。
次の画面では、Web Appの名前とサンプルコードを付与するかどうかを聞かれます。今回はサンプルコードを付けておきましょう。必要に応じてサンプルコードのあり・なしを決定してみてください。
そしてWebAppの名前を入力し、右下のCREATE をクリックします。

次の画面では、どの言語のWebAppを作るのかを聞かれます。HTML、JS、CSSで作る、Bokeh(Python)で作る、Shiny(R)で作るかを選択できます。
今回はShinyを選択します。
次に以下のような画面が表示されます。左ペインにはUIとServer、右ペインには結果が表示されます。

実際に動かす際は、右ペインの「Preview」画面の中に、「START BACK END」とあるかと思います。
これをクリックすると、Shinyを起動できます。

スライダーを左右に動かすことで、右側のチャートの分布が変わってきます。

DataikuにおけるR実行環境

DataikuでRを実行するにあたり、実行環境について注意しておく必要があります。
Dataikuでは、Python、Rともに複数の実行環境を作成することができます。
(下の画面はR‗env という環境をAdministrator > Code Env


そのため、RMarkdownやShinyなど、実行環境が異なるため「パッケージが無い」などのエラーが起こります。ですので、実際に作成したコードが動かない場合が出てきたら、Rの実行環境をチェックしてみてください。

  • Visual Recipeであれば Advancedタブの中にあります。

  • Notebook(Jupyter Notebook)であれば、以下の画面に記載してあります。

           
  • R Markdownであれば以下のSettings タブの画面。
  • Shinyであれば、以下のSettings タブの画面。



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

Rの最大の特徴である様々な種類のパッケージのインストール、どのようにしたらよいでしょうか?
もちろん、Rのパッケージ追加は可能です。ただし、Administrationメニューの中にあるため、一般ユーザーのみなさんは利用できないかもしれませんが、その場合は管理者に聞いてみてください。

新しいパッケージをインストール環境をAdministrator > Code Envs から選択してください。


環境をクリックすると、次のような画面が出てきます。「Requested Packages(R)」という項目があるので、そこに必要なパッケージを入力して、右ペインのUpdateをクリックします。

その際、左ペイン中の「Update all Packages」のチェックボックスは外しておくことを推奨します。Updateを押してしまうと、ほかのPackageもUpdateがかかってしまうためです。


また、現在どのようなPackageがインストールされているかを確認するのは、左ペイン中の「Actually installed packages」 ページにて確認ができます。

まとめ

今回はDataikuで利用可能な、「R言語」を使った機能の説明を行いました。

デフォルト機能ではどうしてもできない部分(複雑なデータハンドリング、最新のアルゴリズム適応)を利用したい場合にRの機能を使うことで、効率的に分析ができそうです。また、RMarkdownやShinyなど、データ探索やレポーティングでもDataikuを通して、いつものR言語が利用できるのはメリットが大きいのではないかと思います。

Dataikuは無料でしかも継続的に使えるフリーエディションや、クラウド上で準備済みの環境もあり、かつチュートリアルも充実しているので、ぜひとも一度触ってみて、実感してみてください。