SAS ViyaはAIプラットフォームです。PythonやJava、Rなどの言語を通して利用できます。そのSAS Viyaの中で使われているのがCASTableというテーブルオブジェクトです(CASはCloud Analytic Servicesの略です)。CASTableからデータを取得する方法は幾つかありますが、今回はFetchオブジェクトを使ったデータのソートについて、複数の方法を紹介します。
SAS Viyaに接続する
まずはSAS Viyaに接続します。
from swat import *
cashost='localhost'
casport=5570
useremail='dev@sas.com'
userpassword='password'
casauth='~/.authinfo'
conn = CAS(cashost, casport, useremail, userpassword, caslib="casuser")
データをアップロードする
CSVファイルのデータをアップロードします。今回は有名なIRISのデータです。
out = conn.upload('./iris.csv')
Fetchオブジェクトを取得する
Fetchオブジェクトをconnから取得します。
fa = conn.Fetch()
ソートの基本形
まずは実行時に指定する方法です。sortbyを指定します。
fa(table=dict(name='IRIS', caslib='casuser'), to=5, sortby=['SepalLength', 'SepalWidth'])
set_paramsを利用
繰り返し使えるようにset_paramsで指定する方法です。複数カラムあるので、添字を使って指定します。
fa.set_params('sortby.0.name', 'SepalLength',
'sortby.0.formatted', 'raw',
'sortby.1.name', 'PetalWidth',
'sortby.1.formatted', 'raw')
paramsプロパティを利用
paramsを指定して行うこともできます。こちらの方が直感的かも知れません。
fa.params.sortby[0].name = 'PetalWidth'
fa.params.sortby[0].formatted = 'raw'
fa.params.sortby[1].name = 'PetalLength'
fa.params.sortby[1].formatted = 'raw'
まとめ
いずれの方法でも並び替えが可能です。好みの方法をご利用ください。ぜひ、みなさんのSAS ViyaとPythonを使ったデータ分析に役立ててください。