Python
SAS

SAS ViyaのPython SDKのメソッドを確認する際にはhelpメソッドを使いましょう

SAS ViyaはAIプラットフォームになります。Webブラウザ上で機械学習の設計、実行ができるStudioという環境も用意されていますが、開発者はプログラミングコードで開発することも可能です。プログラミング言語はJava/Python/R/SASが選べます。

機械学習を用いる際に専用のテーブル(casTable)を用いますが、今回はそのテーブルオブジェクト(Python版)のサマリーデータをグラフ化し、さらにHTMLとして保存します。


接続する

例えばSAS Viyaに接続する際には以下のようにコードを記述します。

import swat as sw

cashost='localhost'
casport=5570
useremail='dev@sas.com'
userpassword='dev'
casauth='~/.authinfo'
conn = sw.CAS(cashost, casport, useremail, userpassword, caslib="casuser")

この conn オブジェクトがどんなメソッドを持っているかを確認する際には conn.help() を実行します。そうすると以下のような結果が得られます。

NOTE: Available Action Sets and Actions:

NOTE: accessControl
NOTE: accessPersonalCaslibs - Provides administrative access to all personal caslibs (CASUSER and CASUSERHDFS)
NOTE: assumeRole - Assumes a role
NOTE: dropRole - Relinquishes a role
:

SAS Viya The Python Perspective によれば builtins メソッドも用意されているとのことなのですが、うまく結果が出ませんでした。

conn.builtins

> <swat.cas.actions.Builtins at 0x7f04202a04e0>

キーで指定しても同じです。

conn['builtins']

> TypeError: 'CAS' object is not subscriptable

同様にcasTableにもhelpメソッドが用意されています。

out.casTable.help()

> NOTE: Available Action Sets and Actions:
> NOTE: accessControl
> NOTE: accessPersonalCaslibs - Provides administrative access to all personal caslibs (CASUSER and CASUSERHDFS)
> NOTE: assumeRole - Assumes a role
> NOTE: dropRole - Relinquishes a role


listメソッドでオブジェクトの持つメソッドを出力させることもできますが、helpメソッドの方が説明文もあるので分かりやすいです。Python SDKの使い方に困ったらhelpメソッドを使ってみてください。

SAS for Developers | SAS

SAS® Help Center: What's New in SAS Viya 3.4: System Programming Guide