LoginSignup
1
1

More than 5 years have passed since last update.

SAS Viyaでのデータの読み込みと表示

Last updated at Posted at 2018-08-15

SAS ViyaではCAS(Cloud Analytic Services)と呼ぶインメモリのデータベースエンジンを搭載しています。今回はローカルにあるデータを読み込んで、表示を確認する流れを紹介します。実装はPythonで行っています。

ライブラリのインポート

swatというライブラリを使います。swatというのは Scripting Wrapper for Analytics Transfer の略です。

from swat import *

SAS Viyaへの接続

まずSAS Viyaへの接続です。必要なのはホスト、ポート番号、ユーザ名とパスワードです。

cashost='localhost'
casport=5570
useremail='USER_EMAIL'
userpassword='PASSWORD'

そして接続します。

sess = CAS(cashost, casport, useremail, userpassword, caslib="casuser")

テーブルアクションセットの用意

今回はデータをテーブルに読み込むので、テーブルアクションセットを用意します。

sess.loadactionset(actionset="table")

データの読み込み

そして例えば /opt/sasinside/DemoData 以下にあるデータを読み込みます。 sas7bdat というのはSASで作ったファイルに使われる拡張子です。

indata_dir="/opt/sasinside/DemoData"
indata="bank_raw"

if not sess.table.tableExists(table=indata).exists:
    tbl = sess.upload_file(indata_dir+"/"+indata+".sas7bdat", casout={"name":indata})

データを確認する

データを確認する際には head メソッドを使います。

tbl.head()

そうするとデフォルトで5行のデータが表示されます。

b_tgt cat_input1 cat_input2 cnt_tgt demog_age demog_ho demog_pr int_tgt r_demog_homeval r_demog_inc ... rfm6 rfm7 rfm8 rfm9 rfm10 rfm11 rfm12 demog_genf demog_genm account
0 1.0 X A NaN NaN 0.0 24.0 7000.0 57600.0 52106.0 ... 22.0 4.0 6.0 5.0 20.0 9.0 92.0 0.0 1.0
1 1.0 X A 2.0 NaN 0.0 24.0 7000.0 57587.0 52106.0 ... 22.0 4.0 6.0 5.0 20.0 9.0 92.0 0.0 1.0
2 1.0 X A 2.0 NaN 0.0 0.0 15000.0 44167.0 42422.0 ... 16.0 3.0 8.0 16.0 27.0 11.0 91.0 0.0 1.0
3 0.0 X A 0.0 68.0 0.0 32.0 NaN 90587.0 59785.0 ... 21.0 2.0 7.0 15.0 19.0 9.0 123.0 1.0 0.0
4 0.0 X A 0.0 NaN 0.0 0.0 NaN 100313.0 NaN ... 38.0 5.0 19.0 24.0 13.0 6.0 128.0 1.0 0.0
tbl.head(10)

とすれば10行の結果が返ってきます。

テーブル情報を確認する

テーブルの型やどれくらいのデータがあるかと言った情報は tbl.info() で取得できます。

N   Miss    Type
b_tgt            1060038  False  double
cat_input1       1060038  False    char
cat_input2       1060038  False    char
cnt_tgt          1060037   True  double
demog_age         793177   True  double
demog_ho         1060038  False  double
  :
demog_genf       1060038  False  double
demog_genm       1060038  False  double
account          1060038  False    char
dtypes: char(3), double(22)
data size: 220487904
vardata size: 0
memory usage: 2394080

ディープラーニングを使ってデータを解析していく際にはデータを確認しながらステップバイステップで行っていくかと思います。テーブルの情報を確認する際には上記を参考にしてください。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1