こんにちは。
PythonとSWATを使って、CASにデータをアップロードする場合は、下記のコードをご参考ください。
下記のコードを実行終わったら、CASを更新すればデータが出てきます。
もしなんか質問があれば、また聞いてください。
import swat
import pandas as pd
import numpy as np
swatURL = "xxxxxxx" #SAS ViyaのCASサーバのURL
server = swatURL
filePath = "xxxx.csv" #読み込むファイルのパス
fileNameOnCas = "MyPythonDataSASDemo01" #CASサーバー上に保存するときのファイル名
user = "xxxx" #SAS ViyaをログインするためのID
password = "xxxx" #SAS ViyaをログインするためのPW
session = swat.CAS(server, 5570, user, password) #SWATをでSAS ViyaのCASサーバーと通信を取ります
data = pd.read_csv(filePath) #データを読み込み
sasData = swat.SASDataFrame(data) #データ型を変換SAS DataFrameに変換する
session.upload_frame(sasData, casout = dict(name = fileNameOnCas, replace = True))
if session.table.tableExists(caslib='Public', name = fileNameOnCas).exists ==2:
session.table.dropTable(caslib='Public', name = fileNameOnCas)
promoteTable = session.table.promote(caslib='CASUSER', drop=True, targetLib = 'Public', name = fileNameOnCas)
results = session.table.tableExists(caslib='Public', name = fileNameOnCas)
if results.exists == 0:
print ('The table %s failed to load into memory.' % (fileNameOnCas))
elif results.exists == 1:
print ('Promotion failed, the table %s is session-scoped.' % (fileNameOnCas))
else:
print ('The table %s was successfully promoted!' % (fileNameOnCas))