SAS Viyaで回帰分析モデルを試す(その2:条件を指定する)
SAS Viyaでは様々なアクションセットが用意されており、データ分析を容易に行えるようになっています。今回はその一つ、回帰分析モデルを条件を指定しながら試す方法を紹介します。なお、この処理はSAS Viyaのデモアカウントでも行えますので、ぜひお試しください。
データのアップロード
元のデータは以下のURLに用意してあります。ダウンロードしてください。
そしてSAS ViyaのJupyter Notebookでアップロードします。
SAS Viyaへの接続
まずSAS Viyaに接続します。認証情報はあなたのものに書き換えてください。
cashost='localhost'
casport=5570
useremail='[email protected]'
userpassword='xxxxxxxxxxx'
casauth='~/.authinfo'
conn = CAS(cashost, casport, useremail, userpassword, caslib="casuser")
データの読み込み
次に先ほどアップロードしたデータを読み込みます。
cars = conn.upload('cars.csv').casTable
カラム情報は次のようになっています。
print(cars.columninfo());
出力結果です。
[ColumnInfo]
Column ID Type RawLength FormattedLength NFL NFD
0 Make 1 varchar 13 13 0 0
1 Model 2 varchar 39 39 0 0
2 Type 3 varchar 6 6 0 0
3 Origin 4 varchar 6 6 0 0
4 DriveTrain 5 varchar 5 5 0 0
5 MSRP 6 double 8 12 0 0
6 Invoice 7 double 8 12 0 0
7 EngineSize 8 double 8 12 0 0
8 Cylinders 9 double 8 12 0 0
9 Horsepower 10 double 8 12 0 0
10 MPG_City 11 double 8 12 0 0
11 MPG_Highway 12 double 8 12 0 0
12 Weight 13 double 8 12 0 0
13 Wheelbase 14 double 8 12 0 0
14 Length 15 double 8 12 0 0
+ Elapsed: 0.0014s, user: 0.001s, mem: 0.7mb
アクションセットを読み込む
回帰分析のアクションセットを読み込みます。
conn.loadactionset('regression')
モデルを作る
モデルを定義します。ターゲットと入力値を指定します。
cars.glm(
target = 'MSRP',
inputs = ['MPG_City']
)
モデルを次のように定義して、プロパティをセットすることもできます。
linear1 = cars.Glm()
linear1.target = 'MSRP';
linear1.inputs = ['MPG_City']
linear1()
分布をグラフ化する
ではデータを可視化してみます。まず取得するデータの定義です。
result1 = conn.CASTable('cas.MSRPPrediction2', replace=True)
linear1.output.casout = result1
linear1.output.pred = 'Predicted_MSRP'
linear1.output.resid = 'Residual_MSRP'
linear1.output.lcl = 'LCL_MSRP'
linear1.output.ucl = 'UCL_MSRP'
linear1()
取得するデータに条件を付ける
条件の付与ですが、以下のように query
メソッドを使って行います。
result1[['Predicted_MSRP', 'MSRP', 'MPG_City', 'Make', 'Model']].query('Predicted_MSRP < 0').to_frame()
結果はこのようになります。
Predicted_MSRP | MSRP | MPG_City | Make | Model | |
---|---|---|---|---|---|
0 | -12933.617000 | 20140.0 | 46.0 | Honda | Civic Hybrid 4dr manual (gas/electric) |
1 | -37603.511169 | 19110.0 | 60.0 | Honda | Insight 2dr (gas/electric) |
2 | -35841.375871 | 20510.0 | 59.0 | Toyota | Prius 4dr (gas/electric) |
可視化する
さらにこのデータをX/Y軸を指定して可視化します。
p = Scatter(out1, x='MPG_City', y='MSRP', color='Origin', marker='Origin')
output_file('scatter2.html')
show(p)
このような結果が得られるはずです。
まとめ
データの分析、可視化は大変そうに感じますがSAS Viyaを使うことでストレスなく素早く可視化まで行えます。SAS for Developers | SASからデモアカウントを作れますので、ぜひお試しください。
Author And Source
この問題について(SAS Viyaで回帰分析モデルを試す(その2:条件を指定する)), 我々は、より多くの情報をここで見つけました https://qiita.com/ViyaDev/items/e86e42aa38ef52231452著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .