Autumn 2000

特集

特集 SAS V8ｅの新機能とV6環境からの切り替え

10

Q&A

15

日本SASユーザー会総会および研究発表会（SUGI-J 2000開催報告）

SAS V8ｅの新機能とV6環境からの切り替え
はじめに
SAS V8e（Version 8.1 TS1M0 以後「V8e」と略します）がいよい
よ出荷開始となりました。いままでSAS V6（Version 6.07〜6.12
以後「V6」と略します）をお使いただいている皆様にとりまして、

16

新刊マニュアルのご紹介

以下の3点は最も関心のある点だと思います。これらについて簡単にご紹介します。

17

SASプログラマーズ・ワークショップ開催のお知らせ

18

Windows版SASシステム バージョン 8eリリースのお知らせ

3. V6からV8eに切り替えるにはどうすれば良いか

18

SASトレーニングのお知らせ

1. SAS V8e SAS基本機能における新機能とV6からの拡張点

1. 新機能及び拡張点は何か
2. 今までの資産は使えるのか

V8eにおいては数々の新機能及び拡張点がありますが、ここでは

19

最新リリース情報

SAS基本機能を中心に「DATAステップ」「SASデータライブラリ」「出力」「他社製品とのデータ交換」の4点をご紹介します。

1.1 DATAステップに関する新機能と拡張点
発行
株式会社SASインスティチュートジャパン
テクニカルニュースに関するお問い合わせ先【変数名】
変数名の長さが変更されたのは大きな拡張点の１つです。変更された項目とその長さは以下のとおりです。

テクニカルサポートグループ

TEL:03-3533-3877
FAX:03-3533-3781
E-mail:technews@jpn.sas.com

項 目

V6での長さV8での長さ

8バイト

32バイト

40バイト

256バイト200バイト32,767バイト

・変数名(Arrayステートメントで指定可能な配列含む）
・SASデータセット名※
・SASカタログ名
・マクロ名
・マクロ変数名
・ラベル付きステートメントの「ラベル」名・カタログエントリ名（SAS/AF SAS/FSP他）
・列ラベル
・データセットラベル
・１変数当たりの最大文字数※「SASデータセットの世代管理」を行う場合、28バイトが最大になります。（世代管理については後述）なお、［ライブラリ参照名］［ファイル参照名］［フォーマット名］

1.2 SASデータライブラリに係わる新機能と拡張点

および［インフォーマット名］についてはV6と同様に8バイトとな【SASライブラリ・SASカタログの参照】というV6形式のSASライブラリを、SASDATAというライブります。新しく追加された［VALIDVARNAME=］システムオプシ

ここではLIBNAMEステートメントのエンジン拡張および新しく追ラリ参照名で統合した例です。この状態でV6DATAのライブ

ョンを使用すると、V6同様に8バイト制限にできます。ただしV6互加されたCATNAMEステートメントを中心にご紹介します。

※左記はV8DATAというV8形式のSASライブラリと、V6DATA換の場合、8バイト長の変数名・データセット名を持つSASデータ

GENNUM

参照されるデータセット0

最新のデータセット

ラリ割り当てを取り消しても、SASDATAはV8DATA、正の整数

作成時から［○世代目］のデータセット

V6DATAの双方の内容を継続して参照することが可能です。

負の整数

最新から［○世代前］のデータセット

セットは操作が一切できなくなりますのでご注意ください。

・ LIBNAMEステートメント【SETステートメント】
SETステートメントでSASデータセットをOPENするタイミングを

1） V8エンジンの指定追加

・CATNAMEステートメント
CATNAMEステートメントは、散在している複数のSASカタログ

世代管理を行う場合、SASシステムはデータセット名を内部的にを1つのカタログ名で参照できる機能です。

DATALIB.CLASS#003等の名前で保持します。世代を示す番号4桁（バV8eではV6で作成されたSASデータセットをV6形式のまま変更できるようになりました。

参照、編集、追加ができます。SASシステムは、SASデー
例）

タセットがV6形式・V8形式のどちらであるかを自動的に認

全データセットを同時にOPENする場合識しますが、V6エンジン、V8エンジンの指定を行って認識イト）が付加されるので、SASデータセット名の長さは28バイトま例）

でとなります。

CATNAME work.catlib (sascat.catalog1 sascat.catalog2) ;させることもできます。

【INDEX】
V8eではINDEXが作成されている変数をWHERE句で参照する処理※上記はカタログSASCAT.CATALOG1とSASCAT.CATALOG2DATA merge̲data ;が変更されました。

SET table1 table2 table3 table4 table5 table6 table7 ;LIBNAME libref V8 'V8eのデータセット・カタログの格納ディレクトリ名' ;を、WORK.CATLIBというカタログ参照名で参照することを

RUN ;LIBNAME libref V6 'V6のデータセット・カタログの格納ディレクトリ名' ;実現しています。ただしSASCAT.CATALOG1に格納された例）

FRAMEエントリ等をWORK.CATLIBを通して編集すること

SASデータセットMEMBERは変数IDについてINDEXが作成されてこれについては後述の「SAS V8eとV6資産の共存」で詳しくごはできません。WORK.CATLIBは参照するための名前でしかいます。

説明します。

ありません。また、ユーザ定義ライブラリに格納されたSAS

上記はTABLE1〜TABLE7を結合して、MERGE̲DATAというSASデータセットを作成する例です。V6ではTABLE1〜TABLE7の全てを同時にOPENしていました。V8eでは下記のようにOPEN=DEFERを

データセットについては、LIBNAMEステートメントを使用
2） DBMSエンジンの指定追加

指定することでSASデータセットを順次OPENできます。これによ

LIBNAMEステートメントを使用し、他社データベースのテってTABLEをOPENする際に消費されるメモリの使用量の低減がはーブルを参照できるようになりました。

せず、物理パス名で直接参照することが可能になりました。

WHERE id ='15' OR id ='321' OR id ='215' OR id ='4' OR id ='510' ;
RUN ;

例）
これを実行した場合、V6とV8eでは以下のように出力結果が異なるかれます。下記の例はTABLE1をOPENし、読み終えてCLOSEした
後、TABLE2以降を順次OPENします。

PROC PRINT DATA = member ;例）

PROC PRINT DATA= ' D:¥資料￥sasﾃﾞｰﾀｾｯﾄ￥class' ; RUN ;場合があります。

Oracle内のテーブルを参照する場合
例）※上記はD:¥資料￥SAデータセットに格納されたCLASSという

データセットを順次OPENする場合

V6の実行結果（結果１）

SASデータセット（物理ファイル名：class.sas7bdat また

LIBNAME oralib oracle user=xxxx pw=yyyy path='dbmssrv' schema=educ ;は class.sd2）を参照する場合※上記の場合はSAS/ACCESS to Oracleソフトウェアの契約がDATA merge̲data ;必要です。

SET table1 table2 table3 table4 table5 table6 table7 OPEN=DEFER ;【世代管理】
V8eではGENMAと、GENNUMオプションを使用することで、SASRUN ;3） ライブラリが割り当てられているSASライブラリの再割り当て
SASDATA1が既に割り当てられているSASライブラリに対

データセットの世代管理を実現しています。修正前のSASデータセ

し、LIBNAMEステートメントのライブラリ参照名を使用

今までINFILEステートメントにのみ存在していたDELIMITER(DLM)=

して、更に別のライブラリ名を割り当てることができます。

例）

オプション、DSDオプションがFILEステートメントにも追加されま

また、複数のライブラリ参照名を1つにまとめることがで

DATALIB.CLASSを10世代まで管理する例した。その結果、CSVファイルやタブ区切りファイルの出力を、簡きるようになりました。

例）

'15'

'215'

'215'

'4'

'321'

'510'

'510'

1） オプションIDXWHERE=がNOであるため（デフォルトではYESになっています）DATA datalib.class (GENMAX=10) ;例）

SET sasuser.class ;V8eではINDEXが作成された変数をWHERE句で取り扱う場合、ライブラリ参照名を使った再割り当てRUN ;INDEXを使用した処理を行うかどうかをIDXWHERE=オプションで決定することができます。

LIBNAME sasdata 'd:￥user￥sampdat ;※GENMAXで何世代まで管理するかを指定します。

LIBNAME userdata (sasdata) ;PROC PRINT DATA = member (IDXWHERE=YES) ;例）

SET sasuser.class (OBS=3) ;※上記はライブラリ参照名SASDATAが割り当てられていFILE PRINT DSD ;WHERE id = '15' OR id = '321' OR id = '215' OR id = '4' OR id = '510' ;3世代前のDATALIB.CLASSをプリントする例

RUN ;るSAMPDATに、さらに USERDATAという別のライブ

PUT name sex age height weight ;ラリ参照名を割り当てている例です。

RUN ;PROC PRINT DATA=datalib.class (GENNUM= -3) ;上記のように「IDXWHERE=YES」を指定することでV6と同様の結RUN ;果を得ることができます（INDEXを使用した処理）。
「IDXWHERE=NO」を指定するとINDEXを使用せず、常に順番に

例）
結果）

'4'

'321'

V8eの結果が異なる理由は以下のいずれかです。

CSVファイルの出力
DATA ̲NULL̲ ;

ID

'15'

ットを参照する等の要望に応えることができます。

【FILEステートメント】

単に行えるようになりました。

V8eの実行結果（結果２）ID

複数ライブラリ参照名の統合※GENNUMで処理を行うデータセットが何世代前のものかを

データを読み込む処理を行います。

指定します。
Alice,F,13,56.5,84

LIBNAME v8data V8 'd:￥user￥samplib￥v8' ;Becka,F,13,65.3,98

LIBNAME v6data V6 'd:￥user￥samplib￥v6' ;Gail,F,14,64.3,90

LIBNAME sasdata (v8data v6data) ;※SQLプロシジャでは上記オプションは使用できません。

なお、［ライブラリ参照名］［ファイル参照名］［フォーマット名］

1.2 SASデータライブラリに係わる新機能と拡張点

および［インフォーマット名］についてはV6と同様に8バイトとな【SASライブラリ・SASカタログの参照】というV6形式のSASライブラリを、SASDATAというライブります。新しく追加された［VALIDVARNAME=］システムオプシ

ここではLIBNAMEステートメントのエンジン拡張および新しく追ラリ参照名で統合した例です。この状態でV6DATAのライブ

ョンを使用すると、V6同様に8バイト制限にできます。ただしV6互加されたCATNAMEステートメントを中心にご紹介します。

※左記はV8DATAというV8形式のSASライブラリと、V6DATA換の場合、8バイト長の変数名・データセット名を持つSASデータ

GENNUM

参照されるデータセット0

最新のデータセット

ラリ割り当てを取り消しても、SASDATAはV8DATA、正の整数

作成時から［○世代目］のデータセット

V6DATAの双方の内容を継続して参照することが可能です。

負の整数

最新から［○世代前］のデータセット

セットは操作が一切できなくなりますのでご注意ください。

・ LIBNAMEステートメント【SETステートメント】
SETステートメントでSASデータセットをOPENするタイミングを

1） V8エンジンの指定追加

・CATNAMEステートメント
CATNAMEステートメントは、散在している複数のSASカタログ

世代管理を行う場合、SASシステムはデータセット名を内部的にを1つのカタログ名で参照できる機能です。

DATALIB.CLASS#003等の名前で保持します。世代を示す番号4桁（バV8eではV6で作成されたSASデータセットをV6形式のまま変更できるようになりました。

参照、編集、追加ができます。SASシステムは、SASデー
例）

タセットがV6形式・V8形式のどちらであるかを自動的に認

全データセットを同時にOPENする場合識しますが、V6エンジン、V8エンジンの指定を行って認識イト）が付加されるので、SASデータセット名の長さは28バイトま例）

でとなります。

CATNAME work.catlib (sascat.catalog1 sascat.catalog2) ;させることもできます。

【INDEX】
V8eではINDEXが作成されている変数をWHERE句で参照する処理※上記はカタログSASCAT.CATALOG1とSASCAT.CATALOG2DATA merge̲data ;が変更されました。

SET table1 table2 table3 table4 table5 table6 table7 ;LIBNAME libref V8 'V8eのデータセット・カタログの格納ディレクトリ名' ;を、WORK.CATLIBというカタログ参照名で参照することを

RUN ;LIBNAME libref V6 'V6のデータセット・カタログの格納ディレクトリ名' ;実現しています。ただしSASCAT.CATALOG1に格納された例）

FRAMEエントリ等をWORK.CATLIBを通して編集すること

SASデータセットMEMBERは変数IDについてINDEXが作成されてこれについては後述の「SAS V8eとV6資産の共存」で詳しくごはできません。WORK.CATLIBは参照するための名前でしかいます。

説明します。

ありません。また、ユーザ定義ライブラリに格納されたSAS

上記はTABLE1〜TABLE7を結合して、MERGE̲DATAというSASデータセットを作成する例です。V6ではTABLE1〜TABLE7の全てを同時にOPENしていました。V8eでは下記のようにOPEN=DEFERを

データセットについては、LIBNAMEステートメントを使用
2） DBMSエンジンの指定追加

指定することでSASデータセットを順次OPENできます。これによ

LIBNAMEステートメントを使用し、他社データベースのテってTABLEをOPENする際に消費されるメモリの使用量の低減がはーブルを参照できるようになりました。

せず、物理パス名で直接参照することが可能になりました。

WHERE id ='15' OR id ='321' OR id ='215' OR id ='4' OR id ='510' ;
RUN ;

例）
これを実行した場合、V6とV8eでは以下のように出力結果が異なるかれます。下記の例はTABLE1をOPENし、読み終えてCLOSEした
後、TABLE2以降を順次OPENします。

PROC PRINT DATA = member ;例）

PROC PRINT DATA= ' D:¥資料￥sasﾃﾞｰﾀｾｯﾄ￥class' ; RUN ;場合があります。

Oracle内のテーブルを参照する場合
例）※上記はD:¥資料￥SAデータセットに格納されたCLASSという

データセットを順次OPENする場合

V6の実行結果（結果１）

SASデータセット（物理ファイル名：class.sas7bdat また

LIBNAME oralib oracle user=xxxx pw=yyyy path='dbmssrv' schema=educ ;は class.sd2）を参照する場合※上記の場合はSAS/ACCESS to Oracleソフトウェアの契約

DATA merge̲data ;SET table1 table2 table3 table4 table5 table6 table7 OPEN=DEFER ;

が

必要です。

【世代管理】
V8eではGENMAと、GENNUMオプションを使用することで、SASRUN ;3） ライブラリが割り当てられているSASライブラリの再割り当て
SASDATA1が既に割り当てられているSASライブラリに対

データセットの世代管理を実現しています。修正前のSASデータセ

し、LIBNAMEステートメントのライブラリ参照名を使用

今までINFILEステートメントにのみ存在していたDELIMITER(DLM)=

して、更に別のライブラリ名を割り当てることができます。

例）

オプション、DSDオプションがFILEステートメントにも追加されま

また、複数のライブラリ参照名を1つにまとめることがで

DATALIB.CLASSを10世代まで管理する例した。その結果、CSVファイルやタブ区切りファイルの出力を、簡きるようになりました。

例）

'15'

'215'

'215'

'4'

'321'

'510'

'510'

1） オプションIDXWHERE=がNOであるため（デフォルトではYESになっています）DATA datalib.class (GENMAX=10) ;例）

SET sasuser.class ;V8eではINDEXが作成された変数をWHERE句で取り扱う場合、ライブラリ参照名を使った再割り当てRUN ;INDEXを使用した処理を行うかどうかをIDXWHERE=オプションで決定することができます。

LIBNAME sasdata 'd:￥user￥sampdat ;※GENMAXで何世代まで管理するかを指定します。

LIBNAME userdata (sasdata) ;PROC PRINT DATA = member (IDXWHERE=YES) ;例）

SET sasuser.class (OBS=3) ;※上記はライブラリ参照名SASDATAが割り当てられていFILE PRINT DSD ;WHERE id = '15' OR id = '321' OR id = '215' OR id = '4' OR id = '510' ;3世代前のDATALIB.CLASSをプリントする例

RUN ;るSAMPDATに、さらに USERDATAという別のライブ

PUT name sex age height weight ;ラリ参照名を割り当てている例です。

RUN ;PROC PRINT DATA=datalib.class (GENNUM= -3) ;上記のように「IDXWHERE=YES」を指定することでV6と同様の結RUN ;果を得ることができます（INDEXを使用した処理）。
「IDXWHERE=NO」を指定するとINDEXを使用せず、常に順番に

例）
結果）

'4'

'321'

V8eの結果が異なる理由は以下のいずれかです。

CSVファイルの出力
DATA ̲NULL̲ ;

ID

'15'

ットを参照する等の要望に応えることができます。

【FILEステートメント】

単に行えるようになりました。

V8eの実行結果（結果２）ID

複数ライブラリ参照名の統合※GENNUMで処理を行うデータセットが何世代前のものかを

データを読み込む処理を行います。

指定します。
Alice,F,13,56.5,84

LIBNAME v8data V8 'd:￥user￥samplib￥v8' ;Becka,F,13,65.3,98

LIBNAME v6data V6 'd:￥user￥samplib￥v6' ;Gail,F,14,64.3,90

LIBNAME sasdata (v8data v6data) ;※SQLプロシジャでは上記オプションは使用できません。

2）［BUFNO=］が適正な値ではないため・プリンタへの出力

V8eではBUFNO=1がデフォルトで設定されていますが、このPROC SQL ;値が小さい場合、結果２のようになる場合があります。また、

CREATE TABLE employees

このような場合「OPTIONS MSGLEVEL=I ;」（デフォルトで(idnum CHAR(5), name CHAR(30), salary NUM,

はNになっています）を指定すると、INDEXに関するメッセー

CONSTRAINT pk PRIMARY KEY (idnum))（表示方法）

処理結果の体裁や文字修飾を整えてプリンタに出力する機能です。

PROC PRINT DATA=sasuser.class(TYPE=AUDIT) ; RUN;ODS PRINTER ;（上記の結果）ジをログに出力することができます。

PROC PRINT DATA=sasuser.class ;SAS システム

5

RUN ;2000年 8月10日 木曜日 15:34

CREATE TABLE sales

ODS PRINTER CLOSE ;(idnum CHAR(5), name CHAR(30), age NUM,

INFO: Index ID not used. Sorting into index order may help.

CONSTRAINT fk FOREIGN KEY (idnum) REFERENCES employees

INFO: Index ID not used. Increasing bufno to 3 may help.

NAME SEX AGE HEIGHT WEIGHT

why

̲ATDATETIME̲

上記はプリンタへ直接出力する例です。

ON UPDATE RESTRICT ON DELETE RESTRICT) ;Taro M 13 58.5

これはINDEXを使用した処理をするためには、BUFNOを3まで引き上げる必要があることを示す情報です。「OPTIONS BUFNO=3 ;」を追加し、上記はEMPLOYEESにIDNUMの主キーを設定し、SALESに外部キPRINT処理を実行するとV6と同様の処理結果を得られます。

ーIDNUM（EMPLOYEESの主キーIDNUMに依存）を設定しています。

127 引越しによる転入 10AUG2000:17:03:32

処理結果をSASデータセットとして出力する機能です。V6ではデ̲ATOBSNO̲ ̲ATRETURNCODE̲ ̲ATUSERID̲ ̲ATOPCODE̲ ̲ATMESSAGE̲

ここでSALESにEMPLOYEESへ登録されていないデータを追加し【一貫性制約（Integrity Constraints）】

ようとすると、・SASデータセットとしての出力
ータセット出力ができなかったTABULATEプロシジャ等への使用が考えられます。

20.

jpnkcyDA

SASデータセットにデータの追加・更新・削除を行う場合、そのデ

ODS OUTPUT REPORT=work.report ;ータ内容を一定のルールに従ってチェックし、ルールに違反した場

ERROR: Observation was not added/updated because no̲ATで始まる変数は、オーディット・トレイルのために標準で提供

合はその操作を無効とする機能が新規に追加されました。

match was found for the foreign key value.

されている変数です。

PROC TABULATE DATA=uridata ;CLASS shohin scd ; TABLES shohin,scd ;NOTE: テーブルを矛盾のない状態に戻すため上記のエラー
・汎用制約（General Constraints）

前の挿入を削除します。

RUN ;1.3 出力に係わる新機能と拡張点【ODS(Output Delivery System)】

単独のデータセットの変数に対してあるルールを設定し、チェッ※ODS OUTPUTステートメントに続くREPORT=は使用プロシジのメッセージを出力し、SALESへの追加は行われません。

ODSはSASにおける処理結果出力を革新的に変える機能です。ODSャに応じて異なります。詳しくはオンラインヘルプ又は英語版

制約はSQLプロシジャ、DATASETSプロシジャ、SCL（SASはOUTPUTウィンドウへの出力、HTMLファイルとしての出力、プマニュアル（The Complete Guide to the SAS Output Delivery

例）Component Language）でのみ生成・追加・削除が可能であり、リンタへの出力、SASデータセットとしての出力を行うことが可能

System, Version 8 オーダーNo：57241）をご参照ください。

データセット［EMPLOYEES］を生成し、その中の１変数SALARYDATAステップでは取り扱うことはできません。

です。ODS機能の一部についてご紹介します。

クを行う機能です。

ODSにつきましてはその他数多くの機能がありますので、詳しくはは4,000,000未満とならないようにするために、SALARYが・OUTPUTウィンドウへの出力（Listing）

オンラインヘルプ又は英語版マニュアルをご参照ください。

4,000,000未満のデータを排除する場合は、以下の書式で制約を設【オーディット・トレイル（Audit Trails）】

定します。

オーディット・トレイルはSASデータセットに対して行われた操作

SAS V8eにおける基本的な利用方法です。OUTPUTウィンドウへをオーディット・トレイルファイル「（TYPE=AUDIT）」にログとしの出力および外部ファイルへの出力を行う場合、この機能を使用

1.4 他社製品とのデータ交換に係わる新機能と拡張点て保持する機能です。

します。

【IMPORT/EXPORTプロシジャ】

PROC SQL ;V6において評価版として提供されておりましたIMPORTプロシジャ

CREATE TABLE employees(idnum CHAR(5), name CHAR(30), salary NUM,

例）ODS LISTING (FILE='物理ファイル名' ¦ ファイル参照名) ;/EXPORTプロシジャが、外部ファイルの入出力に使用するプロシ

CONSTRAINT ok̲salary CHECK(salary > 4000000)) ;データセットSASUSER.CLASSにオーディット・トレイルファイル［出力を行いたい処理(例えば PROC PRINT DATA=sasuser.class ; RUN;)］ジャとして利用できるようになりました。これらはカンマ区切り形を作成する例です。

ODS LISTING CLOSE ;式、タブ区切り形式ファイルの入出力に便利な機能を提供します。

上記はOK̲SALARYという制約名でルールが作成されています。このテーブルに対し、PROC DATASETS LIB = sasuser ;※外部ファイルへの出力を行う場合はFILE=を指定します。

PROC SQL ;INSERT INTO employees

INITIATE ; USER̲VAR why $50 LABEL='異動理由' ;RUN ;上記のUSER̲VARステートメントは標準のオーディット・トレイルとSALARY=3500000のデータを追加しようとした場合、情報が出力されます。

WARNING: 出力先がアクティブではありません。

PROC IMPORT OUT= work.class
DATAFILE= "d:¥temp¥class.csv"
DBMS=CSV REPLACE;

・HTMLファイルとしての出力
処理結果の出力をHTMLファイルとして生成・出力する機能です。

GETNAMES=YES; /* 先頭行を変数名として使用する場合 */DATAROW=2;/* データ行は２行目より開始する場合 */RUN;に失敗しました。 データ値が一貫性制約 OK̲SALARY に従い
ません。

う場合

出力処理を行った場合、下記のメッセージが出て、何も出力されま用の変数に任意の変数を追加します。SASUSER.CLASSに１件データを追加し、オーディット・トレイルファイルを表示すると以下のERROR: データセット WORK.EMPLOYEES への追加／更新「ODS LISTING CLOSE」の後、そのままOUTPUTウィンドウへのせん。ODSステートメントによる制御には十分ご注意ください。

SET idnum='00001' name='山田' salary=3500000 ;例）
IMPORTプロシジャにてカンマ区切り形式ファイルの読み込みを行

AUDIT class ;ODS HTML PATH='c:¥temp' (URL=NONE) BODY='tabulate.html' ;PROC TABULATE DATA=uridata ;のメッセージを出力し、EMPLOYEESへの追加は行われません。
・参照制約（Referential Constraints）

CLASS shohin scd ; TABLES shohin,scd ;

例）

RUN ;

EXPORTプロシジャにてカンマ区切り形式ファイルの書き出しを行ODS HTML CLOSE ;う場合［主テーブル］に登録済みの場合にのみ、子テーブルにも登録可
能とする等のチェックを行う機能です。
例）
データセットEMPLOYEESとSALESがあり、EMPLOYEESに登録されていないデータがSALESに登録されることを排除する場合、以下の様式で制約を設定します。

上記は1プロシジャの処理結果を出力する例ですが、複数プロシジ

PROC EXPORT DATA= sasuser.class

ャの処理結果をFRAMEを使用したHTMLファイルとして生成する

OUTFILE= "d:¥temp¥class.csv"

ことも可能です。

DBMS=CSV REPLACE;
RUN;2）［BUFNO=］が適正な値ではないため・プリンタへの出力

V8eではBUFNO=1がデフォルトで設定されていますが、このPROC SQL ;値が小さい場合、結果２のようになる場合があります。また、

CREATE TABLE employees

このような場合「OPTIONS MSGLEVEL=I ;」（デフォルトで(idnum CHAR(5), name CHAR(30), salary NUM,

はNになっています）を指定すると、INDEXに関するメッセー

CONSTRAINT pk PRIMARY KEY (idnum))（表示方法）

処理結果の体裁や文字修飾を整えてプリンタに出力する機能です。

PROC PRINT DATA=sasuser.class(TYPE=AUDIT) ; RUN;ODS PRINTER ;（上記の結果）ジをログに出力することができます。

PROC PRINT DATA=sasuser.class ;SAS システム

5

RUN ;2000年 8月10日 木曜日 15:34

CREATE TABLE sales

ODS PRINTER CLOSE ;(idnum CHAR(5), name CHAR(30), age NUM,

INFO: Index ID not used. Sorting into index order may help.

CONSTRAINT fk FOREIGN KEY (idnum) REFERENCES employees

INFO: Index ID not used. Increasing bufno to 3 may help.

NAME SEX AGE HEIGHT WEIGHT

why

̲ATDATETIME̲

上記はプリンタへ直接出力する例です。

ON UPDATE RESTRICT ON DELETE RESTRICT) ;Taro M 13 58.5

これはINDEXを使用した処理をするためには、BUFNOを3まで引き上げる必要があることを示す情報です。「OPTIONS BUFNO=3 ;」を追加し、上記はEMPLOYEESにIDNUMの主キーを設定し、SALESに外部キPRINT処理を実行するとV6と同様の処理結果を得られます。

ーIDNUM（EMPLOYEESの主キーIDNUMに依存）を設定しています。

127 引越しによる転入 10AUG2000:17:03:32

処理結果をSASデータセットとして出力する機能です。V6ではデ̲ATOBSNO̲ ̲ATRETURNCODE̲ ̲ATUSERID̲ ̲ATOPCODE̲ ̲ATMESSAGE̲

ここでSALESにEMPLOYEESへ登録されていないデータを追加し【一貫性制約（Integrity Constraints）】

ようとすると、・SASデータセットとしての出力
ータセット出力ができなかったTABULATEプロシジャ等への使用が考えられます。

20.

jpnkcyDA

SASデータセットにデータの追加・更新・削除を行う場合、そのデ

ODS OUTPUT REPORT=work.report ;ータ内容を一定のルールに従ってチェックし、ルールに違反した場

ERROR: Observation was not added/updated because no̲ATで始まる変数は、オーディット・トレイルのために標準で提供

合はその操作を無効とする機能が新規に追加されました。

match was found for the foreign key value.

されている変数です。

PROC TABULATE DATA=uridata ;CLASS shohin scd ; TABLES shohin,scd ;NOTE: テーブルを矛盾のない状態に戻すため上記のエラー
・汎用制約（General Constraints）

前の挿入を削除します。

RUN ;1.3 出力に係わる新機能と拡張点【ODS(Output Delivery System)】

単独のデータセットの変数に対してあるルールを設定し、チェッ※ODS OUTPUTステートメントに続くREPORT=は使用プロシジのメッセージを出力し、SALESへの追加は行われません。

ODSはSASにおける処理結果出力を革新的に変える機能です。ODSャに応じて異なります。詳しくはオンラインヘルプ又は英語版

制約はSQLプロシジャ、DATASETSプロシジャ、SCL（SASはOUTPUTウィンドウへの出力、HTMLファイルとしての出力、プマニュアル（The Complete Guide to the SAS Output Delivery

例）Component Language）でのみ生成・追加・削除が可能であり、リンタへの出力、SASデータセットとしての出力を行うことが可能

System, Version 8 オーダーNo：57241）をご参照ください。

データセット［EMPLOYEES］を生成し、その中の１変数SALARYDATAステップでは取り扱うことはできません。

です。ODS機能の一部についてご紹介します。

クを行う機能です。

ODSにつきましてはその他数多くの機能がありますので、詳しくはは4,000,000未満とならないようにするために、SALARYが・OUTPUTウィンドウへの出力（Listing）

オンラインヘルプ又は英語版マニュアルをご参照ください。

4,000,000未満のデータを排除する場合は、以下の書式で制約を設【オーディット・トレイル（Audit Trails）】

定します。

オーディット・トレイルはSASデータセットに対して行われた操作

SAS V8eにおける基本的な利用方法です。OUTPUTウィンドウへをオーディット・トレイルファイル「（TYPE=AUDIT）」にログとしの出力および外部ファイルへの出力を行う場合、この機能を使用

1.4 他社製品とのデータ交換に係わる新機能と拡張点て保持する機能です。

します。

【IMPORT/EXPORTプロシジャ】

PROC SQL ;V6において評価版として提供されておりましたIMPORTプロシジャ

CREATE TABLE employees(idnum CHAR(5), name CHAR(30), salary NUM,

例）ODS LISTING (FILE='物理ファイル名' ¦ ファイル参照名) ;/EXPORTプロシジャが、外部ファイルの入出力に使用するプロシ

CONSTRAINT ok̲salary CHECK(salary > 4000000)) ;データセットSASUSER.CLASSにオーディット・トレイルファイル［出力を行いたい処理(例えば PROC PRINT DATA=sasuser.class ; RUN;)］ジャとして利用できるようになりました。これらはカンマ区切り形を作成する例です。

ODS LISTING CLOSE ;式、タブ区切り形式ファイルの入出力に便利な機能を提供します。

上記はOK̲SALARYという制約名でルールが作成されています。このテーブルに対し、PROC DATASETS LIB = sasuser ;※外部ファイルへの出力を行う場合はFILE=を指定します。

PROC SQL ;INSERT INTO employees

INITIATE ; USER̲VAR why $50 LABEL='異動理由' ;RUN ;上記のUSER̲VARステートメントは標準のオーディット・トレイルとSALARY=3500000のデータを追加しようとした場合、情報が出力されます。

WARNING: 出力先がアクティブではありません。

PROC IMPORT OUT= work.class
DATAFILE= "d:¥temp¥class.csv"
DBMS=CSV REPLACE;

・HTMLファイルとしての出力
処理結果の出力をHTMLファイルとして生成・出力する機能です。

GETNAMES=YES; /* 先頭行を変数名として使用する場合 */DATAROW=2;/* データ行は２行目より開始する場合 */RUN;に失敗しました。 データ値が一貫性制約 OK̲SALARY に従い
ません。

う場合

出力処理を行った場合、下記のメッセージが出て、何も出力されま用の変数に任意の変数を追加します。SASUSER.CLASSに１件データを追加し、オーディット・トレイルファイルを表示すると以下のERROR: データセット WORK.EMPLOYEES への追加／更新「ODS LISTING CLOSE」の後、そのままOUTPUTウィンドウへのせん。ODSステートメントによる制御には十分ご注意ください。

SET idnum='00001' name='山田' salary=3500000 ;例）
IMPORTプロシジャにてカンマ区切り形式ファイルの読み込みを行

AUDIT class ;ODS HTML PATH='c:¥temp' (URL=NONE) BODY='tabulate.html' ;PROC TABULATE DATA=uridata ;のメッセージを出力し、EMPLOYEESへの追加は行われません。
・参照制約（Referential Constraints）

CLASS shohin scd ; TABLES shohin,scd ;

例）

RUN ;

EXPORTプロシジャにてカンマ区切り形式ファイルの書き出しを行ODS HTML CLOSE ;う場合［主テーブル］に登録済みの場合にのみ、子テーブルにも登録可
能とする等のチェックを行う機能です。
例）
データセットEMPLOYEESとSALESがあり、EMPLOYEESに登録されていないデータがSALESに登録されることを排除する場合、以下の様式で制約を設定します。

上記は1プロシジャの処理結果を出力する例ですが、複数プロシジ

PROC EXPORT DATA= sasuser.class

ャの処理結果をFRAMEを使用したHTMLファイルとして生成する

OUTFILE= "d:¥temp¥class.csv"

ことも可能です。

DBMS=CSV REPLACE;
RUN;

更にSAS/ACCESS to PC File Formatsソフトウェアを契約している・ SASUSERディレクトリ

場合、IMPORT/EXPORTプロシジャでExcel97/2000形式のファイ

SASUSERに格納される情報のためのディレクトリです。デフォル（*.XLS）やMS-ACCESS97/2000形式のファイル（*.MDB）の読

ルトは各ユーザーごとのProfilesディレクトリの直下になります。

V6、V8のエンジンを指定しなかった場合、V8eは以下のエンジンを

SAS/CONNECTソフトウェアを使用している場合、以下のようにな

自動的に割り当てます。

ります。

【拡張子の関連付けについて】例）

V6とV8eで主なファイルの拡張子が変更になっています。

IMPORTプロシジャにてMS-ACCESS 2000テーブルの読み込みを行う場合

ファイルの種類
LOG

PROC IMPORT OUT= work.access
DATATABLE= "test1"
DBMS=ACCESS2000 REPLACE;DATABASE="d:¥temp¥db1.mdb";
RUN;

例）

OUTPUT

V6
.LOG
.LST

V8e
.LOG

.SAS

.SAS

ACCESSディスクリプタ.SA2.SAS7BACS

.SC2

V8

ディレクトリにV6のファイルのみ存在する場合

V6

ディレクトリにV8eのファイルのみ存在する場合

V8

ディレクトリにV6・V8eの両方のファイルが存在する場合

サーバー エンジン

V6

V6

V8

※V6からはV8形式を参照できませんのでご注意ください。

V6

.LST

PROGRAM

SASカタログディレクトリにファイルが一切存在しない場合.SAS7BCAT

SASデータセット.SD2.SAS7BDAT

テーブルインデックス.SI2.SAS7BNDX

データセットビュー.SV2.SAS7BVEW

V8e

例）

V6

クライアント

割り当てエンジン

み込みや書き出しも可能となります。

V6でデータセットが認識できない操作

V8

V8e

V6

V6

V8

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V8形式

U

：V8形式

U

：V8形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

LIBNAME sasdata 'd:¥sampdat' ; /* D:¥SAMPDATはファイルが一切存在しない */※凡例：

DATA v8data ;

MDDB

.SM2

.SAS7BMDB

x = 'V8 DATA' ;ストアドプログラム.SS2.SAS7BPGMRUN ;［U ：V6形式］→［UPLOADプロシジャ］で、［サーバー］

EXPORTプロシジャにてMS-ACCESS 2000テーブルへの書き出しにV6形式のSASデータセットを生成
ここで問題となるのはV6でしか使用されていない拡張子でも、V8e※上記の処理をV8eで行い、V6でSASDATA.V8DATAを参照しよに関連付けが行われるということです。［＊.SAS］というファイ

うとしても、SASデータセットV8DATAを認識することはでき［D ：V6形式］→［DOWNLOADプロシジャ］で、［クライPROC EXPORT DATA= sasuser.class

ルをクリックしてV6が起動する環境にするためには、ユーザーが関ません。

アント］にV6形式のSASデータセットを生成

OUTTABLE= "class"

連付けを変更する必要があります。

を行う場合

DBMS=ACCESS2000 REPLACE;DATABASE="d:¥temp¥db1.mdb";

【その他】

RUN;

「V8eのシステム必要条件」が適合しているコンピュータをご使用く
ださい。以下の点についてご注意ください。

例）［RLS：参・追・編］→RLS経由でサーバーのSASデータセ

V6でデータセットが認識できる操作

ットの参照・追加・編集が可能

で囲まれているものは［SASカタログ］についても同操作が可能
LIBNAME sasdata V6 'd:¥sampdat' ;DATA v6data ;V6の読込みウィザードや書込みウィザードではACCESSプロシジャ・V8eではWindows95、Windows98、WindowsNTおよびを使用していましたが、V8eでは上記のIMPORT/EXPORTプロシジ

Windows2000をサポートしています。ただし、Windows95、ャを使用するように変更されました。

Windows98、WindowsNTについてはマイクロソフト社提供のY2K修正ファイルが適用済みであることをご確認ください。

x = 'V6 DATA' ;例えば、［サーバー：V8（エンジンV6）］［クライアント：

RUN ;V8（エンジンV8）］は以下を表しています。

※上記をV8eで処理した場合（D:·SAMPDATにはファイルが存在Uしない）、SASDATAライブラリはV6形式になるので、SASデ【SAS/ACCESS LIBNAMEステートメント】「1.2 SASデータライブラリに係わる新機能と拡張点」のLIBNAME・V8eではヘルプファイルとしてHTML形式のヘルプを提供していステートメントで記述した通り、LIBNAMEステートメントにエンます。これを利用するためにInternet Explorer 5を、SAS V8eイ

ジンを指定することで、他社製品のデータを参照できる機能が追加

ンストール時にインストールすることができます。

：V6形式 →［UPLOADプロシジャ］で［サーバー］にV6形式SASデータセットを生成

ータセットV6DATAもV6形式で生成されます。
D
V6と共存させる場合、空のディレクトリをLIBNAMEステートメン：V8形式 →［DOWNLOADプロシジャ］で［クライアント］にV8形式SASデータセット・カタログを生成

トでSASライブラリとして指定するには、この点に注意が必要です。

されました。
・SVGA（800x600）以上のディスプレイが必要になります。

2. SAS V8eとV6資産の共存

RLS ：参・追・編 →サーバーのV6データセットをクライアン【V6ファイルの参照・編集について】

V6からV8eへの切替えを行う前に、双方のバージョンでの検証作業

2.2資産の共存についてをする方々のために、資産の共存についてご紹介します。V8eでは【LIBNAMEステートメント】

V6で作成したデータセット及びカタログの参照、データセットにつV6とV8eのデータセット・カタログはV8eから参照できますが、そいては追加・更新・削除が行えるので、V6の資産をそのまま活用すの管理方法はディレクトリ単位となります。よってV6のデータセッ

ることができます。

ト・カタログを格納するディレクトリとV8eのデータセット・カタ
ログを格納するディレクトリは別々に分けていただく必要がありま

2.1 同一コンピュータにV6とV8eを共存させる上での注意点

す。このディレクトリ単位で「V6用ディレクトリ」と「V8e用ディ【インストールのディレクトリについて】

レクトリ」とにLIBNAMEステートメントで定義します。

トよりRLS経由で参照・追加・編集可能

V6形式のファイルをV8eでどのように扱えるかは、以下のとおりです。
SAS/SHAREソフトウェアを使用している場合、以下のようになりSASデータセット（テーブル）

参照・追加・編集

データセットビュー

参照

SQL ビュー

参照

SAS/ACCESS ビュー

参照・追加・編集

SAS カタログ参照ます。
クライアントV6

サーバー エンジン

V6

V6

V6

双方のバージョンを共存をさせるためにV6とV8eのインストールディレクトリは完全に分けてください。V8eのディレクトリは主に以LIBNAME libref V6 'V6のデータセット・カタログの格納ディレクトリ名' ;

下の3つに分かれます。

LIBNAME libref V8 'V8eのデータセット・カタログの格納ディレクトリ名' ;V6V8e・ [!SASROOT]ディレクトリ
V6と同様にSASシステムの本体が格納されます。
・ SAS共有ディレクトリ
ODSで使用するJavaアプレット、拡張エディタのモジュール等が格納されます。

V8

V8e
V6

V8

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V8形式

U

：V8形式

U

：V8形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編更にSAS/ACCESS to PC File Formatsソフトウェアを契約している・ SASUSERディレクトリ

場合、IMPORT/EXPORTプロシジャでExcel97/2000形式のファイ

SASUSERに格納される情報のためのディレクトリです。デフォル（*.XLS）やMS-ACCESS97/2000形式のファイル（*.MDB）の読

ルトは各ユーザーごとのProfilesディレクトリの直下になります。

V6、V8のエンジンを指定しなかった場合、V8eは以下のエンジンを

SAS/CONNECTソフトウェアを使用している場合、以下のようにな

自動的に割り当てます。

ります。

【拡張子の関連付けについて】例）

V6とV8eで主なファイルの拡張子が変更になっています。

IMPORTプロシジャにてMS-ACCESS 2000テーブルの読み込みを行う場合

ファイルの種類
LOG

PROC IMPORT OUT= work.access
DATATABLE= "test1"
DBMS=ACCESS2000 REPLACE;DATABASE="d:¥temp¥db1.mdb";
RUN;

例）

OUTPUT

V6
.LOG
.LST

V8e
.LOG

.SAS

.SAS

ACCESSディスクリプタ.SA2.SAS7BACS

.SC2

V8

ディレクトリにV6のファイルのみ存在する場合

V6

ディレクトリにV8eのファイルのみ存在する場合

V8

ディレクトリにV6・V8eの両方のファイルが存在する場合

サーバー エンジン

V6

V6

V8

※V6からはV8形式を参照できませんのでご注意ください。

V6

.LST

PROGRAM

SASカタログディレクトリにファイルが一切存在しない場合.SAS7BCAT

SASデータセット.SD2.SAS7BDAT

テーブルインデックス.SI2.SAS7BNDX

データセットビュー.SV2.SAS7BVEW

V8e

例）

V6

クライアント

割り当てエンジン

み込みや書き出しも可能となります。

V6でデータセットが認識できない操作

V8

V8e

V6

V6

V8

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V8形式

U

：V8形式

U

：V8形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

LIBNAME sasdata 'd:¥sampdat' ; /* D:¥SAMPDATはファイルが一切存在しない */※凡例：

DATA v8data ;

MDDB

.SM2

.SAS7BMDB

x = 'V8 DATA' ;ストアドプログラム.SS2.SAS7BPGMRUN ;［U ：V6形式］→［UPLOADプロシジャ］で、［サーバー］

EXPORTプロシジャにてMS-ACCESS 2000テーブルへの書き出しにV6形式のSASデータセットを生成
ここで問題となるのはV6でしか使用されていない拡張子でも、V8e※上記の処理をV8eで行い、V6でSASDATA.V8DATAを参照しよに関連付けが行われるということです。［＊.SAS］というファイ

うとしても、SASデータセットV8DATAを認識することはでき［D ：V6形式］→［DOWNLOADプロシジャ］で、［クライPROC EXPORT DATA= sasuser.class

ルをクリックしてV6が起動する環境にするためには、ユーザーが関ません。

アント］にV6形式のSASデータセットを生成

OUTTABLE= "class"

連付けを変更する必要があります。

を行う場合

DBMS=ACCESS2000 REPLACE;DATABASE="d:¥temp¥db1.mdb";

【その他】

RUN;

「V8eのシステム必要条件」が適合しているコンピュータをご使用く
ださい。以下の点についてご注意ください。

例）［RLS：参・追・編］→RLS経由でサーバーのSASデータセ

V6でデータセットが認識できる操作

ットの参照・追加・編集が可能

で囲まれているものは［SASカタログ］についても同操作が可能
LIBNAME sasdata V6 'd:¥sampdat' ;DATA v6data ;V6の読込みウィザードや書込みウィザードではACCESSプロシジャ・V8eではWindows95、Windows98、WindowsNTおよびを使用していましたが、V8eでは上記のIMPORT/EXPORTプロシジ

Windows2000をサポートしています。ただし、Windows95、ャを使用するように変更されました。

Windows98、WindowsNTについてはマイクロソフト社提供のY2K修正ファイルが適用済みであることをご確認ください。

x = 'V6 DATA' ;例えば、［サーバー：V8（エンジンV6）］［クライアント：

RUN ;V8（エンジンV8）］は以下を表しています。

※上記をV8eで処理した場合（D:·SAMPDATにはファイルが存在Uしない）、SASDATAライブラリはV6形式になるので、SASデ【SAS/ACCESS LIBNAMEステートメント】「1.2 SASデータライブラリに係わる新機能と拡張点」のLIBNAME・V8eではヘルプファイルとしてHTML形式のヘルプを提供していステートメントで記述した通り、LIBNAMEステートメントにエンます。これを利用するためにInternet Explorer 5を、SAS V8eイ

ジンを指定することで、他社製品のデータを参照できる機能が追加

ンストール時にインストールすることができます。

：V6形式 →［UPLOADプロシジャ］で［サーバー］にV6形式SASデータセットを生成

ータセットV6DATAもV6形式で生成されます。
D
V6と共存させる場合、空のディレクトリをLIBNAMEステートメン：V8形式 →［DOWNLOADプロシジャ］で［クライアント］にV8形式SASデータセット・カタログを生成

トでSASライブラリとして指定するには、この点に注意が必要です。

されました。
・SVGA（800x600）以上のディスプレイが必要になります。

2. SAS V8eとV6資産の共存

RLS ：参・追・編 →サーバーのV6データセットをクライアン【V6ファイルの参照・編集について】

V6からV8eへの切替えを行う前に、双方のバージョンでの検証作業

2.2資産の共存についてをする方々のために、資産の共存についてご紹介します。V8eでは【LIBNAMEステートメント】

V6で作成したデータセット及びカタログの参照、データセットにつV6とV8eのデータセット・カタログはV8eから参照できますが、そいては追加・更新・削除が行えるので、V6の資産をそのまま活用すの管理方法はディレクトリ単位となります。よってV6のデータセッ

ることができます。

ト・カタログを格納するディレクトリとV8eのデータセット・カタ
ログを格納するディレクトリは別々に分けていただく必要がありま

2.1 同一コンピュータにV6とV8eを共存させる上での注意点

す。このディレクトリ単位で「V6用ディレクトリ」と「V8e用ディ【インストールのディレクトリについて】

レクトリ」とにLIBNAMEステートメントで定義します。

トよりRLS経由で参照・追加・編集可能

V6形式のファイルをV8eでどのように扱えるかは、以下のとおりです。
SAS/SHAREソフトウェアを使用している場合、以下のようになりSASデータセット（テーブル）

参照・追加・編集

データセットビュー

参照

SQL ビュー

参照

SAS/ACCESS ビュー

参照・追加・編集

SAS カタログ参照ます。
クライアントV6

サーバー エンジン

V6

V6

V6

双方のバージョンを共存をさせるためにV6とV8eのインストールディレクトリは完全に分けてください。V8eのディレクトリは主に以LIBNAME libref V6 'V6のデータセット・カタログの格納ディレクトリ名' ;

下の3つに分かれます。

LIBNAME libref V8 'V8eのデータセット・カタログの格納ディレクトリ名' ;V6V8e・ [!SASROOT]ディレクトリ
V6と同様にSASシステムの本体が格納されます。
・ SAS共有ディレクトリ
ODSで使用するJavaアプレット、拡張エディタのモジュール等が格納されます。

V8

V8e
V6

V8

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V6形式

U

：V6形式

U

：V6形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

U

：V8形式

U

：V8形式

U

：V8形式

D

：V6形式

D

：V6形式

D

：V8形式

RLS：参・追・編RLS：参・追・編RLS：参・追・編

1） V6にてCPORTプロシジャを使って移送ファイルを作成します。

※凡例：［U ：V6形式］→［COPYプロシジャ］で、［サーバー］に
V6形式のSASデータセットを生成

オプション

値［( )はV6の値］

BUFNO

1(3)

考慮される影響
INDEXが生成されたデータセットを取り扱う際、処理効率が最適化されない可能性があります。

［D ：V6形式］→［COPYプロシジャ］で、［クライアント］にV6形式のSASデータセットを生成
YEARCUTOFF

1920(1900)

FILENAME v6cat 'c:¥temp¥v6cat' ;/* 移送ファイル */LIBNAME v6lib V6 'd:¥saslib¥v6lib' ;/* V6形式のSASライブラリ */PROC CPORT LIB=v6lib FILE=v6cat MEMTYPE=CATALOG ;LIBNAME v8lib V8 "&path" ;2） V8eにて V8形式の SASライブラリ定義及び CIMPORTプロシジ
PROCLEAVE

8096(30K)

大容量のメモリを必要とするプロシジャに関しての設定値を見直す必要があります。

で囲まれているものは［SASカタログ］についても同

SORTPGMBEST(SAS)

ステートメントで他社製品のデータを参照して

RUN ;SYSLEAVE

8096(15K)

V6において設定値を変更していた場合、見直し

SASデータセット・カタログを生成
RLS ：参・追・編 →サーバーのV6データセットをクライアン
トよりサーバライブラリ経由で参照・追加・編集可能/* 移送ファイル */%V6TV8CAT(V8e資産格納用ディレクトリ) ;※TEMPディレクトリ内のV6CATファイルを使用します。
3） 上記で移行作業は終了です。

実際の使用例は以下の通りです。

ていただく必要があります。

SASデータセットを生成：V8形式 →［COPYプロシジャ］で［Client］にV6形式

RUN ;FILENAME v6cat 'c¥temp¥v6cat' ;効率を得られない可能性があります。

D%MEND ;/* V8形式のSASライブラリ */PROC CIMPORT LIB=v8lib INFILE=v6cat ;V8（エンジンV8）］は以下を表しています。
：V6形式 →［COPYプロシジャ］で［サーバー］にV6形式

LIBNAME v8lib V8 'd¥saslib¥v8lib' ;影響が出る可能性があります。但し、LIBNAMEいる時は、「SAS」の指定の場合は十分な処理

U

PROC CIMPORT LIB=v8lib INFILE=v6cat ;「SAS」でない場合もあるため、処理速度等に

例えば、［サーバー：V8（エンジンV6）］［クライアント：

FILENAME v6cat "!temp¥v6cat" ;ャによる移送ファイルの復元を行います。

SORTプロシジャに使用されるプログラムが操作が可能【V8eで実行】%MACRO V6TV8CAT (path);

その結果が異なる可能性があります。

のSASデータセットの参照・追加・編集が可能

境変数で指定されているディレクトリです。

RUN ;

西暦年下２桁のデータを日付値に変換する場合、［RLS：参・追・編］→サーバーライブラリ経由でサーバー※上記のプログラムはTEMPディレクトリにV6CATというファイルを作成します。TEMPディレクトリはWindows上において環デフォルト値が変更されたシステムオプション（一般的なもの）

3.2 移行用サンプルマクロについて/* V6における使用方法 */3.1で説明しました移行用のプロシジャについて簡単なマクロをご%V6TV8CAT(d:¥saslib¥v6lib) ;3. SAS V8eへの移行について紹介します。このマクロを使用する際には、V6の資産が格納されて前項の、［2. SAS V8eとV6資産の共存］で説明しましたとおりV8e

いるディレクトリとV8eの資産を格納するディレクトリを指定する/* V8における使用方法 */にてV6時代の資産を活用することは十分に可能ですが、V8eの新機必要があります。

%V6TV8CAT(d:¥saslib¥v8lib) ;能を利用するためには資産を移行する必要があります。ここではその移行方法についてご説明します。

※必ず、V6とV8eそれぞれで実行してください。

例）
COPYプロシジャによる移行用マクロについて

なお、RLS（リモートライブラリサービス）等でサーバーのラ

3.1 移行に使用するプロシジャについて

イブラリエンジンを指定する場合、以下の要領となります。

メインフレーム又はVAX版SASシステムにおいて、V5からV6へSAS%MACRO V6TOV8 (v6path,v8path) ;ステムを再度起動する度に「マクロプログラム」を実行する必要がデータライブラリを移行する時にはV5TOV6プロシジャという移行

LIBNAME v6lib V6 "&v6path" ;ないので便利です。マクロライブラリは既存のものを使用しても、

LIBNAME libref 'V6のSASライブラリのディレクトリ' SERVER=xxx

専用プロシジャを使用する必要がありましたが、V6からV8eへ移行

LIBNAME v8lib V8 "&v8path" ;新規に作成してもかまいません。マクロライブラリを新規に作成し、

RENGINE=V6 ;するにはCOPYプロシジャを使ってV8形式のSASライブラリへ、自PROC COPY IN=v6lib OUT=v8lib ;登録する方法は次の通りです。

LIBNAME libref 'V8eのSASライブラリのディレクトリ'SERVER=xxx

動的に変換を行えます。

RUN ;RENGINE=V8 ;手順としては以下のとおりです。

%MEND ;a） 適当なディレクトリ（例 ：C:￥SAS￥USR￥SASMACRO）を作

1） LIBNAMEステートメントでV8エンジンを指定し、ライブラリ%V6TOV8(V6資産のディレクトリ,V8e資産格納用ディレクトリ) ;b） CONFIGファイル（例：C:￥SAS￥NLS￥JA¥SASV8.CFG（V8）、

これらのマクロは自動呼出マクロライブラリに登録すると、SASシ

成し、マクロプログラムを記述したファイルを保存します。

2.3 互換性についてきます。またV6で稼動していたプログラムに関しても基本的にそのC:￥SAS￥CONFIG.SAS（V6））内に「-SET

定義を行います。
※上記はV8eで実行してください。

V6の資産（データセット・カタログ）は原則としてV8eでも使用でィレクトリを記述してください。

LIBNAME v8lib V8 'd'¥saslib¥v8lib' ;実際の使用例は以下のとおりです。

まま動作します。
ただし、SASシステムオプションによって動作が異なる場合がありますので、V8eを使用する際に一度オプション設定の内容をご確認ください。

SASAUTOS」と記述されている場所があります。その中に先ほど保存したデ-SET SASAUTOS (2） COPYプロシジャを使用して、V8形式のSASライブラリにV6形%V6TOV8(d:¥saslib¥v6lib,d:¥saslib¥v8lib) ;"c:¥sas¥usr¥sasmacro"

式のデータセット等をコピーします。

・・

LIBNAME v6lib V6 'd:¥saslib¥v6lib' ; /* V6形式のSASライブラリ */PROC COPY IN=v6lib OUT=v8lib ;
RUN ;

例）

）

CPORT／CIMPORTプロシジャによる移行用マクロについて【V6で実行】

おわりに3） 上記で移行作業は終了です。

%MACRO V6TV8CAT (path);

SAS V8e基本機能において、上記以外にも多数の新機能・拡張点が

LIBNAME v6lib "&path" ;あります。Windows版ではSASエクスプローラや拡張エディタなど

FILENAME v6cat "!temp¥v6cat" ;インターフェイス部分に大きく変更されている箇所があります。こCOPYプロシジャではデータセットの他にデータセットビュー、デPROC CPORT LIB=v6lib FILE=v6cat MEMTYPE=CATALOG ;の部分についても使い勝手の良い機能が用意されてありますので、ータセットインデックス等についても同様に変換が可能です。SAS

RUN ;V8e関連マニュアルおよびオンラインヘルプをご参照のうえご活用

カタログについてもCOPYプロシジャでV8形式への変換は可能です%MEND ;

いただければ幸いです。

が、V6形式ではV8固有の機能が使用できませんので、完全なV8形
式でお使いいただくためには、CPORTプロシジャ、CIMPORTプロ
シジャを使用した移送ファイル形式での移行をお奨めします。

%V6TV8CAT(V6資産のディレクトリ) ;1） V6にてCPORTプロシジャを使って移送ファイルを作成します。

※凡例：［U ：V6形式］→［COPYプロシジャ］で、［サーバー］に
V6形式のSASデータセットを生成

オプション

値［( )はV6の値］

BUFNO

1(3)

考慮される影響
INDEXが生成されたデータセットを取り扱う際、処理効率が最適化されない可能性があります。

［D ：V6形式］→［COPYプロシジャ］で、［クライアント］にV6形式のSASデータセットを生成
YEARCUTOFF

1920(1900)

FILENAME v6cat 'c:¥temp¥v6cat' ;/* 移送ファイル */LIBNAME v6lib V6 'd:¥saslib¥v6lib' ;/* V6形式のSASライブラリ */PROC CPORT LIB=v6lib FILE=v6cat MEMTYPE=CATALOG ;LIBNAME v8lib V8 "&path" ;2） V8eにて V8形式の SASライブラリ定義及び CIMPORTプロシジ
PROCLEAVE

8096(30K)

大容量のメモリを必要とするプロシジャに関しての設定値を見直す必要があります。

で囲まれているものは［SASカタログ］についても同

SORTPGMBEST(SAS)

ステートメントで他社製品のデータを参照して

RUN ;SYSLEAVE

8096(15K)

V6において設定値を変更していた場合、見直し

SASデータセット・カタログを生成
RLS ：参・追・編 →サーバーのV6データセットをクライアン
トよりサーバライブラリ経由で参照・追加・編集可能/* 移送ファイル */%V6TV8CAT(V8e資産格納用ディレクトリ) ;※TEMPディレクトリ内のV6CATファイルを使用します。
3） 上記で移行作業は終了です。

実際の使用例は以下の通りです。

ていただく必要があります。

SASデータセットを生成：V8形式 →［COPYプロシジャ］で［Client］にV6形式

RUN ;FILENAME v6cat 'c¥temp¥v6cat' ;効率を得られない可能性があります。

D%MEND ;/* V8形式のSASライブラリ */PROC CIMPORT LIB=v8lib INFILE=v6cat ;V8（エンジンV8）］は以下を表しています。
：V6形式 →［COPYプロシジャ］で［サーバー］にV6形式

LIBNAME v8lib V8 'd¥saslib¥v8lib' ;影響が出る可能性があります。但し、LIBNAMEいる時は、「SAS」の指定の場合は十分な処理

U

PROC CIMPORT LIB=v8lib INFILE=v6cat ;「SAS」でない場合もあるため、処理速度等に

例えば、［サーバー：V8（エンジンV6）］［クライアント：

FILENAME v6cat "!temp¥v6cat" ;ャによる移送ファイルの復元を行います。

SORTプロシジャに使用されるプログラムが操作が可能【V8eで実行】%MACRO V6TV8CAT (path);

その結果が異なる可能性があります。

のSASデータセットの参照・追加・編集が可能

境変数で指定されているディレクトリです。

RUN ;

西暦年下２桁のデータを日付値に変換する場合、［RLS：参・追・編］→サーバーライブラリ経由でサーバー※上記のプログラムはTEMPディレクトリにV6CATというファイルを作成します。TEMPディレクトリはWindows上において環デフォルト値が変更されたシステムオプション（一般的なもの）

3.2 移行用サンプルマクロについて/* V6における使用方法 */3.1で説明しました移行用のプロシジャについて簡単なマクロをご%V6TV8CAT(d:¥saslib¥v6lib) ;3. SAS V8eへの移行について紹介します。このマクロを使用する際には、V6の資産が格納されて前項の、［2. SAS V8eとV6資産の共存］で説明しましたとおりV8e

いるディレクトリとV8eの資産を格納するディレクトリを指定する/* V8における使用方法 */にてV6時代の資産を活用することは十分に可能ですが、V8eの新機必要があります。

%V6TV8CAT(d:¥saslib¥v8lib) ;能を利用するためには資産を移行する必要があります。ここではその移行方法についてご説明します。

※必ず、V6とV8eそれぞれで実行してください。

例）
COPYプロシジャによる移行用マクロについて

なお、RLS（リモートライブラリサービス）等でサーバーのラ

3.1 移行に使用するプロシジャについて

イブラリエンジンを指定する場合、以下の要領となります。

メインフレーム又はVAX版SASシステムにおいて、V5からV6へSAS%MACRO V6TOV8 (v6path,v8path) ;ステムを再度起動する度に「マクロプログラム」を実行する必要がデータライブラリを移行する時にはV5TOV6プロシジャという移行

LIBNAME v6lib V6 "&v6path" ;ないので便利です。マクロライブラリは既存のものを使用しても、

LIBNAME libref 'V6のSASライブラリのディレクトリ' SERVER=xxx

専用プロシジャを使用する必要がありましたが、V6からV8eへ移行

LIBNAME v8lib V8 "&v8path" ;新規に作成してもかまいません。マクロライブラリを新規に作成し、

RENGINE=V6 ;するにはCOPYプロシジャを使ってV8形式のSASライブラリへ、自PROC COPY IN=v6lib OUT=v8lib ;登録する方法は次の通りです。

LIBNAME libref 'V8eのSASライブラリのディレクトリ'SERVER=xxx

動的に変換を行えます。

RUN ;RENGINE=V8 ;手順としては以下のとおりです。

%MEND ;a） 適当なディレクトリ（例 ：C:￥SAS￥USR￥SASMACRO）を作

1） LIBNAMEステートメントでV8エンジンを指定し、ライブラリ%V6TOV8(V6資産のディレクトリ,V8e資産格納用ディレクトリ) ;b） CONFIGファイル（例：C:￥SAS￥NLS￥JA¥SASV8.CFG（V8）、

これらのマクロは自動呼出マクロライブラリに登録すると、SASシ

成し、マクロプログラムを記述したファイルを保存します。

2.3 互換性についてきます。またV6で稼動していたプログラムに関しても基本的にそのC:￥SAS￥CONFIG.SAS（V6））内に「-SET

定義を行います。
※上記はV8eで実行してください。

V6の資産（データセット・カタログ）は原則としてV8eでも使用でィレクトリを記述してください。

LIBNAME v8lib V8 'd'¥saslib¥v8lib' ;実際の使用例は以下のとおりです。

まま動作します。
ただし、SASシステムオプションによって動作が異なる場合がありますので、V8eを使用する際に一度オプション設定の内容をご確認ください。

SASAUTOS」と記述されている場所があります。その中に先ほど保存したデ-SET SASAUTOS (2） COPYプロシジャを使用して、V8形式のSASライブラリにV6形%V6TOV8(d:¥saslib¥v6lib,d:¥saslib¥v8lib) ;"c:¥sas¥usr¥sasmacro"

式のデータセット等をコピーします。

・・

LIBNAME v6lib V6 'd:¥saslib¥v6lib' ; /* V6形式のSASライブラリ */PROC COPY IN=v6lib OUT=v8lib ;
RUN ;

例）

）

CPORT／CIMPORTプロシジャによる移行用マクロについて【V6で実行】

おわりに3） 上記で移行作業は終了です。

%MACRO V6TV8CAT (path);

SAS V8e基本機能において、上記以外にも多数の新機能・拡張点が

LIBNAME v6lib "&path" ;あります。Windows版ではSASエクスプローラや拡張エディタなど

FILENAME v6cat "!temp¥v6cat" ;インターフェイス部分に大きく変更されている箇所があります。こCOPYプロシジャではデータセットの他にデータセットビュー、デPROC CPORT LIB=v6lib FILE=v6cat MEMTYPE=CATALOG ;の部分についても使い勝手の良い機能が用意されてありますので、ータセットインデックス等についても同様に変換が可能です。SAS

RUN ;V8e関連マニュアルおよびオンラインヘルプをご参照のうえご活用

カタログについてもCOPYプロシジャでV8形式への変換は可能です%MEND ;

いただければ幸いです。

が、V6形式ではV8固有の機能が使用できませんので、完全なV8形
式でお使いいただくためには、CPORTプロシジャ、CIMPORTプロ
シジャを使用した移送ファイル形式での移行をお奨めします。

%V6TV8CAT(V6資産のディレクトリ) ;マクロプログラム例）

例1）
data sample;●ダブルクォーテーション(")付きのデータより値のみを読み込む方法について●変数のラベルを全て削除する方法について●変数名の存在をチェックする方法について●全てのオブザベーションが欠損値である数値変数を削除する方法について●任意のオブザベーションを抽出する方法について●先頭に半角スペースを入力する方法について●メニューバー等を非表示にし、FRAMEを最大化して表示させる方法について●インストールしたプロダクト名を確認する方法について（UNIX版）●用量反応の非線形性を確認する方法について●行列の生成方法について●SASでLoess回帰を行う方法について%macro varchk(ds,var);

set sample;

proc contents data=&ds out=temp (keep=name) noprint;label var1= ' ' var2=' ' ... ;

run;
%do;

run;

マクロプログラム例）%macro dropvar(ds,out̲ds);
proc means data=&ds noprint;/* ① */

data ̲null̲;retain exist "0";output out=out(drop=̲type̲ ̲freq̲) n=;run;

set temp ;例2）

if name=%upcase("&var") then exist="1";/* ② */

call symput("exist",exist);

data sapmle;run;

set sample;

proc transpose data=out out=out2;run;%if &exist=1 %then %do;attrib ̲all̲ label=' ';%put 変数 &var は存在します。;

run;/* ③ */%end;%let n=0;%else %do;data ̲null̲;%put 変数 &var は存在しません。;

set out2(where=(col1=0));%end;

call symput('var' ¦¦ left(̲n̲),̲name̲);%end;

指定する変数名が存在するかしないかによって、異な

call symput('n',left(̲n̲));%mend varchk;

run;

った処理を行うことはできますか？
値がダブルクォーテーション(")で閉じられている、カ/* ④ */

ンマ区切りのデータがあるのですが、ダブルクォーテ

バージョン6.11より新たに追加された%SYSFUNCマーション(")も読み込まれてしまいます。中の値のみをクロ関数を使用すると、DATAステップ内でいくつか読み込みたいのですが、どのようにすればいいですか？

実行例）

data &out̲ds;
set &ds%varchk(データセット名,変数名);のSCL関数が使用できるようになります。お使いの%if &n > 0 %then %do;
(drop=

SASシステムのバージョンが6.11以上の場合、SCL関数のVARNUM%do i=1 %to &n;関数を使用することで、変数の存在を簡単にチェックできます。
INFILEステートメントに、DSDオプションを指定する

VARNUM関数は、指定した変数の位置番号を返す関数です。指定

ことにより、値のみを読み込むことができます。

した変数が存在しない場合、0を返します。

&&var&i
%end;

例）

)

マクロプログラム例）

除する方法を教えてください。

data work.test;
infile cards dsd;
input a b $;put a= b=;cards;"1234", "ABCD"MEANSプロシジャには、欠損値でないオブザベーショ%if %sysfunc(varnum(%sysfunc(open(&ds)),&var))

ン数を計算するNという統計量キーワードがあります。

ne 0 %then %do;%end;%put 変数 &var は存在しません。;%end;%mend dropvar;

この値を利用して、全てが欠損値である変数を求めら
れます。
実行例）

%else %do;

run;

;
run;

%macro varchk(ds,var);%put 変数 &var は存在します。;

;

%end;

全てのオブザベーションが欠損値である数値変数を削

下記は、指定したデータセットから全てが欠損値である変数を削除するマクロプログラムの例です。

%dropvar(入力データセット名,出力データセット名);%mend varchk;①

MEANSプロシジャのN統計量キーワードを別のデータセットに出力します。

お使いのバージョンが6.10以前の場合、このプロシジャを指定したいのですが、なにか良い方法はありますか？

変数名と照合することで、変数の存在を確認できます。

② 後の処理に合うようにデータセットを転置します。
③

通常、各変数に設定されているラベルを消去するため転置したデータセットより、目的の変数を抽出し、変数名、オブザベーション数をマクロ変数にセットします。

には例1のように変数名を指定してブランク（' '）を再設定する必要がありますが、例2のようにATTRIBステ

データセットでもかまいません。元のデータセットを残しておく場合は、別のデータセット名を指定してください。

また、CONTENTSプロシジャを使用すると、変数名を取得できます。
あるデータセットから全ての変数のラベルを削除した※また、入力データセットdsと出力データセットout̲dsは同じ④%IFステートメントにて、削除する変数が存在するかチェック

ートメントを使用することで、全ての変数を表す ̲ALL̲ を使用しします。存在する場合、SET ステートメントのDROPオプショ

た記述方法が可能になります。

ンを使用し、全てのオブザベーションが欠損値の変数を削除します。

マクロプログラム例）

例1）
data sample;●ダブルクォーテーション(")付きのデータより値のみを読み込む方法について●変数のラベルを全て削除する方法について●変数名の存在をチェックする方法について●全てのオブザベーションが欠損値である数値変数を削除する方法について●任意のオブザベーションを抽出する方法について●先頭に半角スペースを入力する方法について●メニューバー等を非表示にし、FRAMEを最大化して表示させる方法について●インストールしたプロダクト名を確認する方法について（UNIX版）●用量反応の非線形性を確認する方法について●行列の生成方法について●SASでLoess回帰を行う方法について%macro varchk(ds,var);

set sample;

proc contents data=&ds out=temp (keep=name) noprint;label var1= ' ' var2=' ' ... ;

run;
%do;

run;

マクロプログラム例）%macro dropvar(ds,out̲ds);
proc means data=&ds noprint;/* ① */

data ̲null̲;retain exist "0";output out=out(drop=̲type̲ ̲freq̲) n=;run;

set temp ;例2）

if name=%upcase("&var") then exist="1";/* ② */

call symput("exist",exist);

data sapmle;run;

set sample;

proc transpose data=out out=out2;run;%if &exist=1 %then %do;attrib ̲all̲ label=' ';%put 変数 &var は存在します。;

run;/* ③ */%end;%let n=0;%else %do;data ̲null̲;%put 変数 &var は存在しません。;

set out2(where=(col1=0));%end;

call symput('var' ¦¦ left(̲n̲),̲name̲);%end;

指定する変数名が存在するかしないかによって、異な

call symput('n',left(̲n̲));%mend varchk;

run;

った処理を行うことはできますか？
値がダブルクォーテーション(")で閉じられている、カ/* ④ */

ンマ区切りのデータがあるのですが、ダブルクォーテ

バージョン6.11より新たに追加された%SYSFUNCマーション(")も読み込まれてしまいます。中の値のみをクロ関数を使用すると、DATAステップ内でいくつか読み込みたいのですが、どのようにすればいいですか？

実行例）

data &out̲ds;
set &ds%varchk(データセット名,変数名);のSCL関数が使用できるようになります。お使いの%if &n > 0 %then %do;
(drop=

SASシステムのバージョンが6.11以上の場合、SCL関数のVARNUM%do i=1 %to &n;関数を使用することで、変数の存在を簡単にチェックできます。
INFILEステートメントに、DSDオプションを指定する

VARNUM関数は、指定した変数の位置番号を返す関数です。指定

ことにより、値のみを読み込むことができます。

した変数が存在しない場合、0を返します。

&&var&i
%end;

例）

)

マクロプログラム例）

除する方法を教えてください。

data work.test;
infile cards dsd;
input a b $;put a= b=;cards;"1234", "ABCD"MEANSプロシジャには、欠損値でないオブザベーショ%if %sysfunc(varnum(%sysfunc(open(&ds)),&var))

ン数を計算するNという統計量キーワードがあります。

ne 0 %then %do;%end;%put 変数 &var は存在しません。;%end;%mend dropvar;

この値を利用して、全てが欠損値である変数を求めら
れます。
実行例）

%else %do;

run;

;
run;

%macro varchk(ds,var);%put 変数 &var は存在します。;

;

%end;

全てのオブザベーションが欠損値である数値変数を削

下記は、指定したデータセットから全てが欠損値である変数を削除するマクロプログラムの例です。

%dropvar(入力データセット名,出力データセット名);%mend varchk;①

MEANSプロシジャのN統計量キーワードを別のデータセットに出力します。

お使いのバージョンが6.10以前の場合、このプロシジャを指定したいのですが、なにか良い方法はありますか？

変数名と照合することで、変数の存在を確認できます。

② 後の処理に合うようにデータセットを転置します。
③

通常、各変数に設定されているラベルを消去するため転置したデータセットより、目的の変数を抽出し、変数名、オブザベーション数をマクロ変数にセットします。

には例1のように変数名を指定してブランク（' '）を再設定する必要がありますが、例2のようにATTRIBステ

データセットでもかまいません。元のデータセットを残しておく場合は、別のデータセット名を指定してください。

また、CONTENTSプロシジャを使用すると、変数名を取得できます。
あるデータセットから全ての変数のラベルを削除した※また、入力データセットdsと出力データセットout̲dsは同じ④%IFステートメントにて、削除する変数が存在するかチェック

ートメントを使用することで、全ての変数を表す ̲ALL̲ を使用しします。存在する場合、SET ステートメントのDROPオプショ

た記述方法が可能になります。

ンを使用し、全てのオブザベーションが欠損値の変数を削除します。

トランザクションデータセットに基づいて、マスターデ

FSEDITプロシジャを使用し、データの入力を行っていータセットから任意のオブザベーションを抽出したいのます。データの先頭に、半角スペースを入れたいのでですが、どのようにすればよいでしょうか？

すが、左詰めされてしまいます。たとえば、「東京」********データセットの作成 ****************;

init:ではなく「 東京」のように半角スペースから始まるデータを入力
MERGEステートメントのIN=オプションとBYステート

例）

例）*薬剤の用量をDOSE・反応をRESPとしています。*;

call execcmd('command close; toolclose; zoom on');

する方法を教えてください。

data test1;

return;

メントによって、上記の操作は可能ですが、SETステー

input dose resp @@;トメントの POINT=オプションとNOBS=オプションを$CHARw. インフォーマットを指定すると、先頭のブ併用すると、複数のデータセットのオブザベーションをそれぞれ独ランクを有効にして入力することができます。wには、

なお、上記のSASディスプレイマネージャコマンドを解除するには、

cards;

立に操作することができます。以下の例では、マスターデータセッ

ブランクを含む、データの長さを入力します。

下記のSASディスプレイマネージャコマンドを実行します。

1 123 2 148 3 159 4 166

lack=dose;

トのそれぞれのオブザベーションについて、トランザクションデー
タセットのオブザベーションをすべて読み込み、変数NAMEの値が/* ① */

1 128 2 146 3 161 4 165

例）

例）

1 120 2 142 3 154 4 171

一致するオブザベーションのみを外部ファイルに書き出しています。

1 137 2 147 3 159 4 123
proc fsedit data=fstest;

例）

;

term:

informat a $char10.;

run;call execcmd('command bar; toolload;zoom off');run;return;/* マスターデータセット */****** GLMプロシジャの実行***************;

data master;proc glm data=test1;

input name$ sex$ height weight;
cards;
Adam

M 67 160

Windows版SASシステムのSAS/AFソフトウェアを使

Arthur F 66 125

用して、アプリケーションを構築しています。エンド

インストールしたプロダクト名を、SASを起動せずに

Barefoot M 68 158

ユーザの操作ミスを防ぐために、FRAMEを呼び出す際、確認する方法はありますか？

class lack;/* ② */

model resp=dose lack/ss1;/* ③ */

run;

出力結果）

Bostic F 74 170

メニューバー、コマンドバー、ツールバーを表示せずに、かつ;

FRAMEを最大化して表示したいのですが、何か良い方法はありま「!SASROOT/.install」ディレクトリ下（!SASROOTは

run;

すか？

インストールしたディレクトリ）に、SAS̲TOCという

Source DF Type I SS

名前のファイルがあります。このファイルをエディタ

DOSE 1 2010.01250000 2010.01250000 14.12/* トランザクションデータセット */data trans;
input name$;

SASシステムを起動するアイコンのプロパティの設定と、で開くと、インストールプログラム中に使用された情報を確認すると、Windows版SASシステムのSASシステムオプショ

ことができます。この中にあるPRODUCT̲LABELがインストールさン、SASディスプレイマネージャコマンドにて、実現れたプロダクト名になります。また、「!SASROOT/.install/screens/」

することができます。

cards;LACK 2 444.17500000

Mean Square

F Value Pr > F

222.08750000 1.56

0.00270.2499＊ LACKの部分で非直線性のlack-of-fit検定を行っています。

ディレクトリ下にインストール時の作業のログが残っていますので、
インストール作業の手順を再確認したい場合等に、参照してください。

Adam

GLMプロシジャに関しての詳細は、「SAS/STAT ソフトウェア：

下記の手順にて作業を行ってください。

ユーザーズガイド, Version 6, First Edition」（注文番号1054 価格

Barefoot
;

1.

run;

￥9,800）に記載されていますので、ご参照ください。

SASシステムを起動するアイコンのプロパティ中にある[実行時
用量反応の非線形性を確認するために、lack-of-fit検定の大きさ]を最大化に変更します。

を行いたいと思います。SASで実行する方法を教えて
data ̲null̲;2.

file 'c:¥results.dat' mod;put 'NAMESEX

HEIGHTください。

[リンク先]に NOAWSMENU SASシステムオプションを追加し、メニューバーを非表示にします。

WEIGHT';

do i=1 to mn;

利用します。SAS/STATソフトウェアのGLMプロシジ

do j=1 to tn;

C:¥SAS¥SAS.EXE -CONFIG C:¥SAS¥CONFIG.SAS -NOAWSMENU

行 列 データ

if name=tname then3.

[適用]、[OK]ボタンを選択します。

以下にプログラム例と出力結果を記載します。

4.

FRAMEのINITセクションにて、 COMMAND、TOOLCLOSE、

実行手順

ZOOM SASディスプレイマネージャコマンドを実行し、コマ

①

end;

1 3

1

3 6

-3

2 1

2

5 2

0.5

DATAステップで、分析に使用するデータセットを作成し、薬put;

ンドバー、ツールバーを非表示に、そして、FRAMEを最大化

剤の用量を示す変数を２つ作成します。

put;

します。

（例 直線回帰分析用の変数DOSE・分散分析用の変数LACK）

put;
stop;

例）

ャのTYPEⅠの平方和を利用し、この平方和を求めることができます。

set trans (rename=(name=tname)) point=j nobs=tn;

end;

を簡単に構成する方法を教えてください。

回帰分析で説明できる平方和を引いて求めた平方和を

set master point=i nobs=mn;

put name @11 sex @21 height @31 weight;

SAS/IMLソフトウェアで、以下のようなデータから行列

lack-of-fit検定は、通常の分散分析の平方和から、直線例）

上のデータから下の行列を作る

②

run;

GLMプロシジャのCLASSステートメントに分散分析用の変数. . 1 . . .

を指定します。

2 . . . . .
. . . . . -3③

GLMプロシジャのMODELステートメントに、応答変数、回帰. . . . . .

分析用の変数、 分散分析用の変数の順番で指定し、TYPEⅠ平. .5 . . . .

方和を出力するオプションSS1を用います。

トランザクションデータセットに基づいて、マスターデ

FSEDITプロシジャを使用し、データの入力を行っていータセットから任意のオブザベーションを抽出したいのます。データの先頭に、半角スペースを入れたいのでですが、どのようにすればよいでしょうか？

すが、左詰めされてしまいます。たとえば、「東京」********データセットの作成 ****************;

init:ではなく「 東京」のように半角スペースから始まるデータを入力
MERGEステートメントのIN=オプションとBYステート

例）

例）*薬剤の用量をDOSE・反応をRESPとしています。*;

call execcmd('command close; toolclose; zoom on');

する方法を教えてください。

data test1;

return;

メントによって、上記の操作は可能ですが、SETステー

input dose resp @@;トメントの POINT=オプションとNOBS=オプションを$CHARw. インフォーマットを指定すると、先頭のブ併用すると、複数のデータセットのオブザベーションをそれぞれ独ランクを有効にして入力することができます。wには、

なお、上記のSASディスプレイマネージャコマンドを解除するには、

cards;

立に操作することができます。以下の例では、マスターデータセッ

ブランクを含む、データの長さを入力します。

下記のSASディスプレイマネージャコマンドを実行します。

1 123 2 148 3 159 4 166

lack=dose;

トのそれぞれのオブザベーションについて、トランザクションデー
タセットのオブザベーションをすべて読み込み、変数NAMEの値が/* ① */

1 128 2 146 3 161 4 165

例）

例）

1 120 2 142 3 154 4 171

一致するオブザベーションのみを外部ファイルに書き出しています。

1 137 2 147 3 159 4 123
proc fsedit data=fstest;

例）

;

term:

informat a $char10.;

run;call execcmd('command bar; toolload;zoom off');run;return;/* マスターデータセット */****** GLMプロシジャの実行***************;

data master;proc glm data=test1;

input name$ sex$ height weight;
cards;
Adam

M 67 160

Windows版SASシステムのSAS/AFソフトウェアを使

Arthur F 66 125

用して、アプリケーションを構築しています。エンド

インストールしたプロダクト名を、SASを起動せずに

Barefoot M 68 158

ユーザの操作ミスを防ぐために、FRAMEを呼び出す際、確認する方法はありますか？

class lack;/* ② */

model resp=dose lack/ss1;/* ③ */

run;

出力結果）

Bostic F 74 170

メニューバー、コマンドバー、ツールバーを表示せずに、かつ;

FRAMEを最大化して表示したいのですが、何か良い方法はありま「!SASROOT/.install」ディレクトリ下（!SASROOTは

run;

すか？

インストールしたディレクトリ）に、SAS̲TOCという

Source DF Type I SS

名前のファイルがあります。このファイルをエディタ

DOSE 1 2010.01250000 2010.01250000 14.12/* トランザクションデータセット */data trans;
input name$;

SASシステムを起動するアイコンのプロパティの設定と、で開くと、インストールプログラム中に使用された情報を確認すると、Windows版SASシステムのSASシステムオプショ

ことができます。この中にあるPRODUCT̲LABELがインストールさン、SASディスプレイマネージャコマンドにて、実現れたプロダクト名になります。また、「!SASROOT/.install/screens/」

することができます。

cards;LACK 2 444.17500000

Mean Square

F Value Pr > F

222.08750000 1.56

0.00270.2499＊ LACKの部分で非直線性のlack-of-fit検定を行っています。

ディレクトリ下にインストール時の作業のログが残っていますので、
インストール作業の手順を再確認したい場合等に、参照してください。

Adam

GLMプロシジャに関しての詳細は、「SAS/STAT ソフトウェア：

下記の手順にて作業を行ってください。

ユーザーズガイド, Version 6, First Edition」（注文番号1054 価格

Barefoot
;

1.

run;

￥9,800）に記載されていますので、ご参照ください。

SASシステムを起動するアイコンのプロパティ中にある[実行時
用量反応の非線形性を確認するために、lack-of-fit検定の大きさ]を最大化に変更します。

を行いたいと思います。SASで実行する方法を教えて
data ̲null̲;2.

file 'c:¥results.dat' mod;put 'NAMESEX

HEIGHTください。

[リンク先]に NOAWSMENU SASシステムオプションを追加し、メニューバーを非表示にします。

WEIGHT';

do i=1 to mn;

利用します。SAS/STATソフトウェアのGLMプロシジ

do j=1 to tn;

C:¥SAS¥SAS.EXE -CONFIG C:¥SAS¥CONFIG.SAS -NOAWSMENU

行 列 データ

if name=tname then3.

[適用]、[OK]ボタンを選択します。

以下にプログラム例と出力結果を記載します。

4.

FRAMEのINITセクションにて、 COMMAND、TOOLCLOSE、

実行手順

ZOOM SASディスプレイマネージャコマンドを実行し、コマ

①

end;

1 3

1

3 6

-3

2 1

2

5 2

0.5

DATAステップで、分析に使用するデータセットを作成し、薬put;

ンドバー、ツールバーを非表示に、そして、FRAMEを最大化

剤の用量を示す変数を２つ作成します。

put;

します。

（例 直線回帰分析用の変数DOSE・分散分析用の変数LACK）

put;
stop;

例）

ャのTYPEⅠの平方和を利用し、この平方和を求めることができます。

set trans (rename=(name=tname)) point=j nobs=tn;

end;

を簡単に構成する方法を教えてください。

回帰分析で説明できる平方和を引いて求めた平方和を

set master point=i nobs=mn;

put name @11 sex @21 height @31 weight;

SAS/IMLソフトウェアで、以下のようなデータから行列

lack-of-fit検定は、通常の分散分析の平方和から、直線例）

上のデータから下の行列を作る

②

run;

GLMプロシジャのCLASSステートメントに分散分析用の変数. . 1 . . .

を指定します。

2 . . . . .
. . . . . -3③

GLMプロシジャのMODELステートメントに、応答変数、回帰. . . . . .

分析用の変数、 分散分析用の変数の順番で指定し、TYPEⅠ平. .5 . . . .

方和を出力するオプションSS1を用います。

j関数は、全ての成分が同じである行列を生成します。

●ポスター賞 （グラフィック特別賞）

次元縮小演算子を用いて、生成する行列の行数、およキリンビール株式会社 長谷川 要氏

び列数を取得し、成分が全て欠損値からなる行列を最初に作成して、それにデータの値を代入します。以下がプログラム例です。
例）「SAS/GRAPH ソフトウェアを用いたフラクタル図形の作成」

日本SASユーザー会総会
および研究発表会（SUGI-J 2000開催報告）

また、日本SASユーザー会を支援する株式会社SASインスティチュ
ートジャパンから、本年度より同社のパブリックリレーションズ活動に貢献したユーザ企業へ「SASインスティチュートジャパン特別賞」が制定され、SUGI-J 2000のプレナリーセッションの場を借りproc iml;

8月31日、9月1日の２日間、東京全日空ホテルにて第19回日本SAS

同賞の発表と授与式も行われています。第一回目の受賞企業は、以ユーザー会総および研究発表会（SUGI-J2000）が開催されました。

下のとおりです。

x={1 3 1,

今回のSUGI-J 2000では、延べ参加人数2000名を超える盛況ぶりで

3 6 -3,した。これは、過去最高の記録であり、また、SASに対するお客様

有限会社社企業行動デザイン研究所

2 1 2,の関心の高さの表われであります。

全日本空輸株式会社

5 2 0.5};a=x[<>,1];/* データを行列として行列x に取り込みます */など多業種にわたり、今一番ホットなデータマイニングとSAS V8e

米国SASインスティチュート本社からは、アジア太平洋ラテンアメ

で提供される協力なツールであるODS(Output Delivery System)を

リカ地域担当 副社長リー・リチャードソン氏が、日本では2年ぶり

中心に、総数62報の論文となりました。

のメジャーバージョンアップとなるSASシステム バージョン8eの/* 求めた行数、列数からなる、成分が全て欠損値*/

初日のプレナリーセッションでは、日本SASユーザー会代表世話人

リリース、変わりつつあるeビジネス、成功するeビジネス等の報告/* の行列y を作成します */である東京大学教授 大橋靖雄氏をはじめ、SUGI-J 2000年次総会チがありました。

ェアマンのキリンビール株式会社（日本SASユーザー会副代表世話特別セッションも同時に開催され、米国SAS本社からR&Dディレク人）本川裕氏、そして弊社株式会社SASインスティチュートジャパ

ター ジョン・ブルックル バンク氏による Enterprise Minerソフト/* nrow関数で行列x の行数を求め、その回数だけ*/

ン代表取締役社長 デイヴィッド C.フェンダーの挨拶がありました。

ウェア バージョン4の「New Features in Enterprise Miner Release/* ループします */本年も例年通り、日本SASユーザー会からは各優秀論文賞が発表さ4.0」と「Genomic Data Analysis with Enterprise Miner」のセッシれています。各賞は以下のとおりです。

ョン、統計関連では、統計線形モデル研究開発グループ上級統計学/* 生成する行列を求めます */b=x[<>,2];y=j(a,b,.);

発表された論文では、医薬をはじめシステム開発、金融、流通業界

do i=1 to nrow(x);y[x[i,1],x[i,2]]=x[i,3];

研究員ラッセル・ウォルフィンガー氏による「Statistical Enhancements/* x[i,3]に入っている値のデータを新たに作る行列y*//* のx[i,1]行、x[i,2]列に代入します */●最高論文賞
興和株式会社 菅波秀規氏、益田隆史氏

end;print y; /* 行列yを表示します */「ダブルプログラミングによる統計解析の品質管理」

for SAS Version 8e」のセッション、SASシステム バージョン8e関
連では、SAS基本ソフトウェア研究開発部R&Dディレクターのスティーブ・ビートルズ氏による「Version 8 特別セッション」等がありました。各セッションとも大勢のお客様が参加し、バージョン8eのquit;●優秀論文賞
住友金属工業株式会社 水田匡彦氏「データマイニングによる製造プロセスの品質解析事例」

期待と重要性の高さを感じました。
今回の論文発表の特徴として、バージョン8eの新機能の紹介はもちろん、様々な分野でのデータマイニイングの事例が多く、もはやデータマイニングは特別な手法ではなく、通常の一プロセスとして、SASシステムを用いてLoess回帰を行うことはできま●奨励賞

広範囲に広まってきていることを物語っています。

富士通エイ・エム・ディ・セミコンダクタ株式会社 山本幸恵氏、渡部和浩氏

初日を締めくくる懇親会では、SUGI-J 2000の参加者をはじめ、日「SASシステムによる半導体製造装置稼動データ分析ツールの構築」

本SASユーザー会世話人会役員の方々、そして米国およびSASインバージョン6.12のSASシステムでは、SAS/INSIGHTソ株式会社 CSK 柳澤彩子氏、松本雅彦氏

スティチュートジャパンが一つになり、様々な意見交換を活発に行

フトウェアで説明変数が一つの場合のLoess回帰を実「Webログを活用したデータマイニング」っていたのが非常に印象的でした。

すか？

来年のSUGI-J 2001では、SASシステム バージョン8eを中心に、強行できます。ただし、複数の説明変数があるものはサポートされていません。バージョン8eより、SAS/STATソフトウェ
アにLOESSプロシジャが追加されます。また、「ノンパラメトリ
ック回帰」に分類される手法のうち、薄板スプライン(thin-plate●企画賞

力なプロダクトとして、また、よりユーザフレンドリーで使いやす関西プロジェクト
武田薬品工業株式会社 岩本 光司氏

spline)回帰を行うTPSPLINEプロシジャもバージョン8eの田辺製薬株式会社 北川 忠行氏

SAS/STATソフトウェアに追加されます。

日本ベーリンガーインゲルハイム株式会社 鍵村 達夫氏
藤沢薬品工業株式会社 大津 洋氏、松岡 淨氏
アストラゼネカ株式会社 伊藤 要二氏「V8のODS機能による総括報告書の電子化」●ポスター賞
大学入試センター 菊池 賢一氏「Windows版SASとテキストエディタの連携パッケージ
SASOLEの開発とその紹介」
株式会社 竹中工務店 武藤 浩氏、建設省 小島 隆矢氏「オフィスの外観の『汚れ感』評価」

いツールや最新技術をSAS社からはご紹介していきたいと思います。
また来年、SUGI-J会場でお待ちしております。

j関数は、全ての成分が同じである行列を生成します。

●ポスター賞 （グラフィック特別賞）

次元縮小演算子を用いて、生成する行列の行数、およキリンビール株式会社 長谷川 要氏

び列数を取得し、成分が全て欠損値からなる行列を最初に作成して、それにデータの値を代入します。以下がプログラム例です。
例）「SAS/GRAPH ソフトウェアを用いたフラクタル図形の作成」

日本SASユーザー会総会
および研究発表会（SUGI-J 2000開催報告）

また、日本SASユーザー会を支援する株式会社SASインスティチュ
ートジャパンから、本年度より同社のパブリックリレーションズ活動に貢献したユーザ企業へ「SASインスティチュートジャパン特別賞」が制定され、SUGI-J 2000のプレナリーセッションの場を借りproc iml;

8月31日、9月1日の２日間、東京全日空ホテルにて第19回日本SAS

同賞の発表と授与式も行われています。第一回目の受賞企業は、以ユーザー会総および研究発表会（SUGI-J2000）が開催されました。

下のとおりです。

x={1 3 1,

今回のSUGI-J 2000では、延べ参加人数2000名を超える盛況ぶりで

3 6 -3,した。これは、過去最高の記録であり、また、SASに対するお客様

有限会社社企業行動デザイン研究所

2 1 2,の関心の高さの表われであります。

全日本空輸株式会社

5 2 0.5};a=x[<>,1];/* データを行列として行列x に取り込みます */など多業種にわたり、今一番ホットなデータマイニングとSAS V8e

米国SASインスティチュート本社からは、アジア太平洋ラテンアメ

で提供される協力なツールであるODS(Output Delivery System)を

リカ地域担当 副社長リー・リチャードソン氏が、日本では2年ぶり

中心に、総数62報の論文となりました。

のメジャーバージョンアップとなるSASシステム バージョン8eの/* 求めた行数、列数からなる、成分が全て欠損値*/

初日のプレナリーセッションでは、日本SASユーザー会代表世話人

リリース、変わりつつあるeビジネス、成功するeビジネス等の報告/* の行列y を作成します */である東京大学教授 大橋靖雄氏をはじめ、SUGI-J 2000年次総会チがありました。

ェアマンのキリンビール株式会社（日本SASユーザー会副代表世話特別セッションも同時に開催され、米国SAS本社からR&Dディレク人）本川裕氏、そして弊社株式会社SASインスティチュートジャパ

ター ジョン・ブルックル バンク氏による Enterprise Minerソフト/* nrow関数で行列x の行数を求め、その回数だけ*/

ン代表取締役社長 デイヴィッド C.フェンダーの挨拶がありました。

ウェア バージョン4の「New Features in Enterprise Miner Release/* ループします */本年も例年通り、日本SASユーザー会からは各優秀論文賞が発表さ4.0」と「Genomic Data Analysis with Enterprise Miner」のセッシれています。各賞は以下のとおりです。

ョン、統計関連では、統計線形モデル研究開発グループ上級統計学/* 生成する行列を求めます */b=x[<>,2];y=j(a,b,.);

発表された論文では、医薬をはじめシステム開発、金融、流通業界

do i=1 to nrow(x);y[x[i,1],x[i,2]]=x[i,3];

研究員ラッセル・ウォルフィンガー氏による「Statistical Enhancements/* x[i,3]に入っている値のデータを新たに作る行列y*//* のx[i,1]行、x[i,2]列に代入します */●最高論文賞
興和株式会社 菅波秀規氏、益田隆史氏

end;print y; /* 行列yを表示します */「ダブルプログラミングによる統計解析の品質管理」

for SAS Version 8e」のセッション、SASシステム バージョン8e関
連では、SAS基本ソフトウェア研究開発部R&Dディレクターのスティーブ・ビートルズ氏による「Version 8 特別セッション」等がありました。各セッションとも大勢のお客様が参加し、バージョン8eのquit;●優秀論文賞
住友金属工業株式会社 水田匡彦氏「データマイニングによる製造プロセスの品質解析事例」

期待と重要性の高さを感じました。
今回の論文発表の特徴として、バージョン8eの新機能の紹介はもちろん、様々な分野でのデータマイニイングの事例が多く、もはやデータマイニングは特別な手法ではなく、通常の一プロセスとして、SASシステムを用いてLoess回帰を行うことはできますか？
バージョン6.12のSASシステムでは、SAS/INSIGHTソ
フトウェアで説明変数が一つの場合のLoess回帰を実●奨励賞

広範囲に広まってきていることを物語っています。

富士通エイ・エム・ディ・セミコンダクタ株式会社 山本幸恵氏、渡部和浩氏

初日を締めくくる懇親会では、SUGI-J 2000の参加者をはじめ、日「SASシステムによる半導体製造装置稼動データ分析ツールの構築」

本SASユーザー会世話人会役員の方々、そして米国およびSASイン

株式会社 CSK 柳澤彩子氏、松本雅彦氏「Webログを活用したデータマイニング」

アにLOESSプロシジャが追加されます。また、「ノンパラメトリ
ック回帰」に分類される手法のうち、薄板スプライン(thin-plateっていたのが非常に印象的でした。
来年のSUGI-J 2001では、SASシステム バージョン8eを中心に、強行できます。ただし、複数の説明変数があるものはサポートされていません。バージョン8eより、SAS/STATソフトウェ

スティチュートジャパンが一つになり、様々な意見交換を活発に行●企画賞

力なプロダクトとして、また、よりユーザフレンドリーで使いやす関西プロジェクト
武田薬品工業株式会社 岩本 光司氏

spline)回帰を行うTPSPLINEプロシジャもバージョン8eの田辺製薬株式会社 北川 忠行氏

SAS/STATソフトウェアに追加されます。

日本ベーリンガーインゲルハイム株式会社 鍵村 達夫氏
藤沢薬品工業株式会社 大津 洋氏、松岡 淨氏
アストラゼネカ株式会社 伊藤 要二氏「V8のODS機能による総括報告書の電子化」●ポスター賞
大学入試センター 菊池 賢一氏「Windows版SASとテキストエディタの連携パッケージ
SASOLEの開発とその紹介」
株式会社 竹中工務店 武藤 浩氏、建設省 小島 隆矢氏「オフィスの外観の『汚れ感』評価」

いツールや最新技術をSAS社からはご紹介していきたいと思います。
また来年、SUGI-J会場でお待ちしております。

新刊マニュアルのご紹介

Getting Started with the SAS System, Version 8

The Little SAS Book: A Primer, Second Edition●注文番号： 57551（英語版）●注文番号： 56649（英語版）

●価格

●価格

： 2,800円： 5,500円

本書を利用し、単純で図解入りの、ステップバイステップ形式の指SASソフトウェアを学びたいがどこから始めたらいいのか分からな

示に従うことにより、基礎的なSASシステムの操作について学ぶこ

い方のために、本書は読みやすくSASのもっとも一般的な特徴につとができます。データへのアクセスや管理、多様なレポートを使用

いて解説しています。本書にはSASシステムの概念に関する全般、してのデータの表現、統計方式を使ったデータ解析といった、SAS

SAS/STATソフトウェアへの入門、インポートプロシジャ／エクス

SASプログラマーズ・ワークショップ
開催のお知らせシステムの環境についても学ぶことができます。SASシステムの新ポートプロシジャを含むSASデータセットへの取り込み方法などがSASより発売された新刊マニュアルをご紹介します。なお、こちら

規ユーザおよびSASインタフェースの新しい特徴について知りたい

記載されています。

に記載されている価格はすべて税抜きです。ご購入については、専人々にとって本書は最適です。

本書には以下の情報が含まれています。DATAステップやPROCス

本年9月に待望のWindows版SASシステムバージョン8eがリリース用のお申し込み用紙にてFAXで弊社「マニュアル販売係」までお申

テップといったSASシステム、SASウィンドウ環境の使用方法、永されました。このリリースに伴い、SASシステムバージョン8eに関久的SAS データセットと一時的SAS データセットとの連携、デーするテクニカルなご紹介をいたします。内容につきましては、ODS

タの入出力、データの更新、ブラウザで見ることができるようにす

機能(Output Delivery System)の紹介やSASシステムバージョン6とTEL：03-3533-3835

Painless Windows : A Handbook for SAS User's,
Second Edition

FAX：03-3533-3781●注文番号： 56647（英語版）

るためにHTMLファイルを生成することができるODS(Outputの共存、また、クライアント・サーバ間にてバージョンV8eとバー●価格

Delivery System)の概要、マクロの概要、DATAステップデバッガ

ジョン6を使用した場合の注意点等をご説明します。日時、場所は、Windows環境の下でSASシステムはどう変わったでしょう。著者は、ーを含むSASプログラムのデバッグ、他のソフトウェア言語のプロ

以下のとおりです。

なお、最新のマニュアル案内は弊社ホームページ

SASエクスプローラインタフェース、ODS（Output Delivery System）、

グラマーがSASプログラミング言語になれるための付録などがあり(http://www.sas.com/japan/)にて公開しておりますのであわせてご

ヘルプインタフェース、 ウィンドウ結果、 ウィンドウ機能、SASます。

利用ください。

データライブラリおよびファイルマネージメントなどの刺激的で新各トピックは例題および図解入りで使いやすい2ページレイアウト

場所：株式会社SASインスティチュートジャパン 東京本社

しい機能を紹介し、明確に解説しています。筆者はまたファイル編に分割されています。初級者でも本書は例題プログラムを使用しそ

住所：東京都中央区勝どき1-13-1 イヌイビル・カチドキ8F

Multiple Comparisons and Multiple Tests Using
the SAS System

集、プログラムのサブミット、プリント、色・フォントなどのウィれを確認する事ですばやくSASシステムを習得することができます。

ンドウ環境の調整、CONFIG.SAS・AUTOEXEC.SASといった起動

プログラム経験者には使い勝手の良いリファレンスとして使用する

時間：14:00〜17:00●注文番号: 56648（英語版）

時ファイルの編集、バッチモードの使用、DDE・OLEの使用、ことができます。

定員：50名●価格

SAS/CONNECTソフトウェアの使用などさまざまなプロセスを紹介

し込みください。

E-mail：booksale@jpn.sas.com: 8,000円： 7,100円●10月27日（金）プレゼンテーションルーム

●11月2日（木）本書は、最先端の方法、専門のマクロおよび証明された最適なプロしています。本書は画面列、ステップバイステップ形式の説明、タマニュアルキャンペーン2000のご案内

シジャの使用方法等について説明しています。

スクが達成できるように簡潔な説明によって記載されています。

SUGI-J2000会場で行いました "マニュアルキャンペーン2000" を、

場所：株式会社SASインスティチュートジャパン 大阪支店

専門のマクロおよび多数の実例により、多数の推論を必要とするさWindows環境下でのすべてのSASプログラマーにとって本書は最適

ご好評につき、2000年10月31日まで延長いたします。今回は2000

住所：大阪市北区堂島浜1-4-16 アクア堂島西館12F

まざまな問題のための解決を例証します。本書ではさらに、陥りやです。

年9月にリリースされたSASシステム バージョン8e に対応したマニ

すい過ちや利点等についても説明し、それに関して、どれが目的に

時間：14:00〜17:00
定員：50名Professional SAS Programmers Pocket
Reference, Third Edition

を定価の15%引きで販売させていただきます。また、30,000円以上

学の研究者か科学者であれば、実データおよび実例にあったさまざ
まな方法を見つけることができます。本書には全体に渡って専門の●注文番号： 58128（英語版）の機会をお見逃しなくご利用ください。

プログラムコードやその説明が含まれており、一般線形の対比、多●価格変量の手段の多重比較、混合モデル・離散データおよび生存データ

本書にはバージョン6以降で追加された多くの新しい特徴を含む解析の多数の推論も含まれています。

SASシステムの構文、ルーチン、ファイル、オプション、コマンド

最も適切なものかを説明しています。製薬、工学、政府あるいは医かわらず、本書はSASプログラムを書く際に非常に役立ちます。

Categorical Data Analysis Using the SAS
System, Second Edition

The Complete Guide to the SAS Output Delivery●注文番号： 57998（英語版）

System, Version 8●価格●注文番号： 57241（英語版）： 11,400円

お買上げのお客様に「マニュアル割引券」をお渡しいたします。こ

統計学者や研究者向けの本書は、SASシステムを使用してカテゴリ●価格

カルデータ解析方法を行う際に非常に有用です。広範囲のアプリケ

本書では、SASプロシジャの出力を、ブラウザで見ることができる

ーション例によって、いろいろな解析の中でFREQ、LOGISTIC、ようにする方法、高解像度ポストスクリプト・プリンタ用に生成す

GENMODおよびCATMODプロシジャを学ぶことができます。他にる方法、SASのデータセットに変換する方法、自分のニーズにあっはPHREGやNPAR1WAYプロシジャについても記載されています。

たプロシジャ結果の出力結果に変更する方法、そしてSASがHTML

また本書には分割表中の連関、テーブルの設定、ロジスティック回

およびプリンタ出力の中で使用する色、およびフォントを変更する

帰および条件付きロジスティック回帰、重み付き最小二乗法モデリ

方法などについて記載されています。また本書には上記の事柄以外

ング、反復測定解析、loglinearモデルおよび生物検定分析に関してにもSASプロシジャの結果や、DATAステッププログラムの結果にも記載されています。本書Second EditionはSASシステムバージョ

ついても記載されています。初級者でも、例題をコピーしたり修正

ン8eのために改訂されました。追加された項目は、追加の正確なテすることによりすばやくODSの基本機能を学習することができます。

スト、一般化された見積もりをしている方程式、LOGISTICプロシ経験者には、オリジナルのSAS出力をTEMPLATEプロシジャを使用

ジャにおけるCLASSステートメントの使用、LOGISTICプロシジャ

することによってSASの出力結果がどう変わるかを知ることができを使用しての正確なロジスティック回帰、母集団に対する特定のモます。

両日とも参加は無料となりますので、ぜひご参加ください。なお、定員に限りがございますので、お早めにお申し込み下さい。お申し： 3,600円

等が記載されています。SASプログラマに関するの知識の有無にか

プレゼンテーションルーム

ュアルおよびバージョン8eに対応した英語版トレーニングテキスト

お問い合わせ先：マニュアル販売係

TEL
03-3533-3835
FAX
03-3533-3781
E-mail booksale@jpn.sas.com

込み方法は、「SASプログラマーズ・ワーク・ショップ参加申込用紙」をご記入の上、FAX、E-mailにてご送付ください。
SASプログラマーズ・ワーク・ショップの申込用紙は下記のURLより入手できます。

http://www.sas.com/japan/service/technical/pws.html

その他、ご不明点、ご質問がございましたら、以下までご連絡下さい。

： 7,800円

お問い合わせ先：マーケティング部

TEL
03-3533-3780
FAX
03-3533-1613
E-mail saspws@jpn.sas.com

デル、つまり平均的なモデルの比較等です。

16

17

新刊マニュアルのご紹介

Getting Started with the SAS System, Version 8

The Little SAS Book: A Primer, Second Edition●注文番号： 57551（英語版）●注文番号： 56649（英語版）

●価格

●価格

： 2,800円： 5,500円

本書を利用し、単純で図解入りの、ステップバイステップ形式の指SASソフトウェアを学びたいがどこから始めたらいいのか分からな

示に従うことにより、基礎的なSASシステムの操作について学ぶこ

い方のために、本書は読みやすくSASのもっとも一般的な特徴につとができます。データへのアクセスや管理、多様なレポートを使用

いて解説しています。本書にはSASシステムの概念に関する全般、してのデータの表現、統計方式を使ったデータ解析といった、SAS

SAS/STATソフトウェアへの入門、インポートプロシジャ／エクス

SASプログラマーズ・ワークショップ
開催のお知らせシステムの環境についても学ぶことができます。SASシステムの新ポートプロシジャを含むSASデータセットへの取り込み方法などがSASより発売された新刊マニュアルをご紹介します。なお、こちら

規ユーザおよびSASインタフェースの新しい特徴について知りたい

記載されています。

に記載されている価格はすべて税抜きです。ご購入については、専人々にとって本書は最適です。

本書には以下の情報が含まれています。DATAステップやPROCス

本年9月に待望のWindows版SASシステムバージョン8eがリリース用のお申し込み用紙にてFAXで弊社「マニュアル販売係」までお申

テップといったSASシステム、SASウィンドウ環境の使用方法、永されました。このリリースに伴い、SASシステムバージョン8eに関久的SAS データセットと一時的SAS データセットとの連携、デーするテクニカルなご紹介をいたします。内容につきましては、ODS

タの入出力、データの更新、ブラウザで見ることができるようにす

機能(Output Delivery System)の紹介やSASシステムバージョン6とTEL：03-3533-3835

Painless Windows : A Handbook for SAS User's,
Second Edition

FAX：03-3533-3781●注文番号： 56647（英語版）

るためにHTMLファイルを生成することができるODS(Outputの共存、また、クライアント・サーバ間にてバージョンV8eとバー●価格

Delivery System)の概要、マクロの概要、DATAステップデバッガ

ジョン6を使用した場合の注意点等をご説明します。日時、場所は、Windows環境の下でSASシステムはどう変わったでしょう。著者は、ーを含むSASプログラムのデバッグ、他のソフトウェア言語のプロ

以下のとおりです。

なお、最新のマニュアル案内は弊社ホームページ

SASエクスプローラインタフェース、ODS（Output Delivery System）、

グラマーがSASプログラミング言語になれるための付録などがあり(http://www.sas.com/japan/)にて公開しておりますのであわせてご

ヘルプインタフェース、 ウィンドウ結果、 ウィンドウ機能、SASます。

利用ください。

データライブラリおよびファイルマネージメントなどの刺激的で新各トピックは例題および図解入りで使いやすい2ページレイアウト

場所：株式会社SASインスティチュートジャパン 東京本社

しい機能を紹介し、明確に解説しています。筆者はまたファイル編に分割されています。初級者でも本書は例題プログラムを使用しそ

住所：東京都中央区勝どき1-13-1 イヌイビル・カチドキ8F

Multiple Comparisons and Multiple Tests Using
the SAS System

集、プログラムのサブミット、プリント、色・フォントなどのウィれを確認する事ですばやくSASシステムを習得することができます。

ンドウ環境の調整、CONFIG.SAS・AUTOEXEC.SASといった起動

プログラム経験者には使い勝手の良いリファレンスとして使用する

時間：14:00〜17:00●注文番号: 56648（英語版）

時ファイルの編集、バッチモードの使用、DDE・OLEの使用、ことができます。

定員：50名●価格

SAS/CONNECTソフトウェアの使用などさまざまなプロセスを紹介

し込みください。

E-mail：booksale@jpn.sas.com: 8,000円： 7,100円●10月27日（金）プレゼンテーションルーム

●11月2日（木）本書は、最先端の方法、専門のマクロおよび証明された最適なプロしています。本書は画面列、ステップバイステップ形式の説明、タマニュアルキャンペーン2000のご案内

シジャの使用方法等について説明しています。

スクが達成できるように簡潔な説明によって記載されています。

SUGI-J2000会場で行いました "マニュアルキャンペーン2000" を、

場所：株式会社SASインスティチュートジャパン 大阪支店

専門のマクロおよび多数の実例により、多数の推論を必要とするさWindows環境下でのすべてのSASプログラマーにとって本書は最適

ご好評につき、2000年10月31日まで延長いたします。今回は2000

住所：大阪市北区堂島浜1-4-16 アクア堂島西館12F

まざまな問題のための解決を例証します。本書ではさらに、陥りやです。

年9月にリリースされたSASシステム バージョン8e に対応したマニ

すい過ちや利点等についても説明し、それに関して、どれが目的に

時間：14:00〜17:00
定員：50名Professional SAS Programmers Pocket
Reference, Third Edition

を定価の15%引きで販売させていただきます。また、30,000円以上

学の研究者か科学者であれば、実データおよび実例にあったさまざ
まな方法を見つけることができます。本書には全体に渡って専門の●注文番号： 58128（英語版）の機会をお見逃しなくご利用ください。

プログラムコードやその説明が含まれており、一般線形の対比、多●価格変量の手段の多重比較、混合モデル・離散データおよび生存データ

本書にはバージョン6以降で追加された多くの新しい特徴を含む解析の多数の推論も含まれています。

SASシステムの構文、ルーチン、ファイル、オプション、コマンド

最も適切なものかを説明しています。製薬、工学、政府あるいは医かわらず、本書はSASプログラムを書く際に非常に役立ちます。

Categorical Data Analysis Using the SAS
System, Second Edition

The Complete Guide to the SAS Output Delivery●注文番号： 57998（英語版）

System, Version 8●価格●注文番号： 57241（英語版）： 11,400円

お買上げのお客様に「マニュアル割引券」をお渡しいたします。こ

統計学者や研究者向けの本書は、SASシステムを使用してカテゴリ●価格

カルデータ解析方法を行う際に非常に有用です。広範囲のアプリケ

本書では、SASプロシジャの出力を、ブラウザで見ることができる

ーション例によって、いろいろな解析の中でFREQ、LOGISTIC、ようにする方法、高解像度ポストスクリプト・プリンタ用に生成す

GENMODおよびCATMODプロシジャを学ぶことができます。他にる方法、SASのデータセットに変換する方法、自分のニーズにあっはPHREGやNPAR1WAYプロシジャについても記載されています。

たプロシジャ結果の出力結果に変更する方法、そしてSASがHTML

また本書には分割表中の連関、テーブルの設定、ロジスティック回

およびプリンタ出力の中で使用する色、およびフォントを変更する

帰および条件付きロジスティック回帰、重み付き最小二乗法モデリ

方法などについて記載されています。また本書には上記の事柄以外

ング、反復測定解析、loglinearモデルおよび生物検定分析に関してにもSASプロシジャの結果や、DATAステッププログラムの結果にも記載されています。本書Second EditionはSASシステムバージョ

ついても記載されています。初級者でも、例題をコピーしたり修正

ン8eのために改訂されました。追加された項目は、追加の正確なテすることによりすばやくODSの基本機能を学習することができます。

スト、一般化された見積もりをしている方程式、LOGISTICプロシ経験者には、オリジナルのSAS出力をTEMPLATEプロシジャを使用

ジャにおけるCLASSステートメントの使用、LOGISTICプロシジャ

することによってSASの出力結果がどう変わるかを知ることができを使用しての正確なロジスティック回帰、母集団に対する特定のモます。

両日とも参加は無料となりますので、ぜひご参加ください。なお、定員に限りがございますので、お早めにお申し込み下さい。お申し： 3,600円

等が記載されています。SASプログラマに関するの知識の有無にか

プレゼンテーションルーム

ュアルおよびバージョン8eに対応した英語版トレーニングテキスト

お問い合わせ先：マニュアル販売係

TEL
03-3533-3835
FAX
03-3533-3781
E-mail booksale@jpn.sas.com

込み方法は、「SASプログラマーズ・ワーク・ショップ参加申込用紙」をご記入の上、FAX、E-mailにてご送付ください。
SASプログラマーズ・ワーク・ショップの申込用紙は下記のURLより入手できます。

http://www.sas.com/japan/service/technical/pws.html

その他、ご不明点、ご質問がございましたら、以下までご連絡下さい。

： 7,800円

お問い合わせ先：マーケティング部

TEL
03-3533-3780
FAX
03-3533-1613
E-mail saspws@jpn.sas.com

デル、つまり平均的なモデルの比較等です。

16

17

最新リリース情報

Windows版SASシステム
バージョン 8eリリースのお知らせ

SASトレーニングのお知らせ

2000年8月29日、SASインスティチュート ジャパンはSASシステム

新コースのご紹介!

の最新バージョンである「V8e」(Windows版)を、本年9月より順次●｢データマイニング基礎｣コース

出荷開始することを発表しました。

｢データマイニング基礎｣コースが仲間入りしました。Enterprise

Windows版

SASシステムリリース 6.12

TS060

このSAS V8eは、これまでのSAS V6の機能がより強化されていま

Minerソフトウェアを使用してデータマイニングの定義をご説明しWindows版

SASシステムリリース 8.1

TS1MO

す。このSAS V8eにより、ODS（Output Delivery System）機能のます。｢初級プログラミング｣｢SASによるデータ解析入門｣を受講済

OS/2版

SASシステムリリース 6.12TS020

追加によるレポーティングの強化、SASデータライブラリ構造の変の方ではじめてデータマイニングについて学習する方が対象になりMacintosh版

SASシステムリリース 6.12

TS040

更によるデータアクセスの向上、その他これまで多くのSASシステます。

ムをご利用のお客様から熱望されておりました、SAS変数名のロン

1日間 ¥40,000（チケット２ポイント）

グネームサポート等を実現しています。

東京：10/20(金)、11/22(水)、12/20(水)また、現在様々な業界でご利用いただいている「Enterprise Miner

大阪：11/27(月)ソフトウェア」は、現行V2.0から大幅なアップグレードを実現した■PCプラットフォーム■ミニコンピュータプラットフォーム
OpenVMS AXP版 SASシステムリリース 6.12

TS020

OpenVMS VAX版 SASシステムリリース 6.08

TS407

V4.0が、2000年11月にリリースされます。V4.0は、SAS V8e上で新サービスチケットのご紹介!

稼動し、より効率的なデータマイニングを実現できます。

●3チケット(受講3ポイント) ¥60,000

今回リリース発表されたWindows版SAS V8eは、2001年夏には更9/1よりお求めやすい｢3チケット｣を販売しています。詳細は ｢ホーなるアップグレードを予定しています。また、同時期に、他プラッムページ（http://www.sas.com/japan）トレーニングのご案内（10-MIPS ABI版

SASシステムリリース 6.11

TS040

トフォームでもSAS V8eのリリースを予定しておりますので、ご期

12月）｣ パンフレットで。

Digital Unix版

SASシステムリリース 6.12

TS040

SunOS/Solaris版

SASシステムリリース 6.12

TS060

九州会場でトレーニング開始!

HP-UX版

SASシステムリリース 6.12

TS060●｢初級プログラミング｣

AIX版

SASシステムリリース 6.12

TS060

ABI+版

SASシステムリリース 6.11

TS040

待ください。
お申込み方法
V8eお申込み方法、お申込みにあたっての注意事項などは、下記
URLをご参照ください。

http://www.sas.com/japan/service/v8/index.html

2日間 ¥40,000 10/26（木）〜27（金）■UNIXプラットフォーム●｢上級プログラミング｣
2日間 ¥40,000 11/13（月）〜14（火）■メインフレームプラットフォーム●｢SASによるデータ解析入門｣

お問い合わせ先TEL

03-3533-6921（東京本社）
06-6345-5700（大阪支店）
093-512-5014（九州営業所）
E-mail v8e@jpn.sas.com

2日間 ¥40,000 12/ 4（月）〜 5（火）MVS版

SASシステムリリース 6.09E TS470

会場：北九州市小倉北区浅野2-14-1 小倉興産KMMビル3F

MSP版

SASシステムリリース 6.09E TS470

SASインスティチュート ジャパン 九州営業所

VOS3版

SASシステムリリース 6.09E TS470（JR小倉駅北口より徒歩1分・西鉄バス小倉駅前下車徒歩3分）

CMS版

SASシステムリリース 6.08

TS410

お問い合わせ先：トレーニング担当

TEL
03-3533-3835
FAX
03-3533-3781
E-mail training@jpn.sas.com

18

19

最新リリース情報

Windows版SASシステム
バージョン 8eリリースのお知らせ

SASトレーニングのお知らせ

2000年8月29日、SASインスティチュート ジャパンはSASシステム

新コースのご紹介!

の最新バージョンである「V8e」(Windows版)を、本年9月より順次●｢データマイニング基礎｣コース

出荷開始することを発表しました。

｢データマイニング基礎｣コースが仲間入りしました。Enterprise

Windows版

SASシステムリリース 6.12

TS060

このSAS V8eは、これまでのSAS V6の機能がより強化されていま

Minerソフトウェアを使用してデータマイニングの定義をご説明しWindows版

SASシステムリリース 8.1

TS1MO

す。このSAS V8eにより、ODS（Output Delivery System）機能のます。｢初級プログラミング｣｢SASによるデータ解析入門｣を受講済

OS/2版

SASシステムリリース 6.12TS020

追加によるレポーティングの強化、SASデータライブラリ構造の変の方ではじめてデータマイニングについて学習する方が対象になりMacintosh版

SASシステムリリース 6.12

TS040

更によるデータアクセスの向上、その他これまで多くのSASシステます。

ムをご利用のお客様から熱望されておりました、SAS変数名のロン

1日間 ¥40,000（チケット２ポイント）

グネームサポート等を実現しています。

東京：10/20(金)、11/22(水)、12/20(水)また、現在様々な業界でご利用いただいている「Enterprise Miner

大阪：11/27(月)ソフトウェア」は、現行V2.0から大幅なアップグレードを実現した■PCプラットフォーム■ミニコンピュータプラットフォーム
OpenVMS AXP版 SASシステムリリース 6.12

TS020

OpenVMS VAX版 SASシステムリリース 6.08

TS407

V4.0が、2000年11月にリリースされます。V4.0は、SAS V8e上で新サービスチケットのご紹介!

稼動し、より効率的なデータマイニングを実現できます。

●3チケット(受講3ポイント) ¥60,000

今回リリース発表されたWindows版SAS V8eは、2001年夏には更9/1よりお求めやすい｢3チケット｣を販売しています。詳細は ｢ホーなるアップグレードを予定しています。また、同時期に、他プラッムページ（http://www.sas.com/japan）トレーニングのご案内（10-MIPS ABI版

SASシステムリリース 6.11

TS040

トフォームでもSAS V8eのリリースを予定しておりますので、ご期

12月）｣ パンフレットで。

Digital Unix版

SASシステムリリース 6.12

TS040

SunOS/Solaris版

SASシステムリリース 6.12

TS060

九州会場でトレーニング開始!

HP-UX版

SASシステムリリース 6.12

TS060●｢初級プログラミング｣

AIX版

SASシステムリリース 6.12

TS060

ABI+版

SASシステムリリース 6.11

TS040

待ください。
お申込み方法
V8eお申込み方法、お申込みにあたっての注意事項などは、下記
URLをご参照ください。

http://www.sas.com/japan/service/v8/index.html

2日間 ¥40,000 10/26（木）〜27（金）■UNIXプラットフォーム●｢上級プログラミング｣
2日間 ¥40,000 11/13（月）〜14（火）■メインフレームプラットフォーム●｢SASによるデータ解析入門｣

お問い合わせ先TEL

03-3533-6921（東京本社）
06-6345-5700（大阪支店）
093-512-5014（九州営業所）
E-mail v8e@jpn.sas.com

2日間 ¥40,000 12/ 4（月）〜 5（火）MVS版

SASシステムリリース 6.09E TS470

会場：北九州市小倉北区浅野2-14-1 小倉興産KMMビル3F

MSP版

SASシステムリリース 6.09E TS470

SASインスティチュート ジャパン 九州営業所

VOS3版

SASシステムリリース 6.09E TS470（JR小倉駅北口より徒歩1分・西鉄バス小倉駅前下車徒歩3分）

CMS版

SASシステムリリース 6.08

TS410

お問い合わせ先：トレーニング担当

TEL
03-3533-3835
FAX
03-3533-3781
E-mail training@jpn.sas.com

18

19

Autumn 2000

特集

特集 SAS V8ｅの新機能とV6環境からの切り替え

10

Q&A

15

日本SASユーザー会総会および研究発表会（SUGI-J 2000開催報告）

SAS V8ｅの新機能とV6環境からの切り替え
はじめに
SAS V8e（Version 8.1 TS1M0 以後「V8e」と略します）がいよい
よ出荷開始となりました。いままでSAS V6（Version 6.07〜6.12
以後「V6」と略します）をお使いただいている皆様にとりまして、

16

新刊マニュアルのご紹介

以下の3点は最も関心のある点だと思います。これらについて簡単にご紹介します。

17

SASプログラマーズ・ワークショップ開催のお知らせ

18

Windows版SASシステム バージョン 8eリリースのお知らせ

3. V6からV8eに切り替えるにはどうすれば良いか

18

SASトレーニングのお知らせ

1. SAS V8e SAS基本機能における新機能とV6からの拡張点

1. 新機能及び拡張点は何か
2. 今までの資産は使えるのか

V8eにおいては数々の新機能及び拡張点がありますが、ここでは

19

最新リリース情報

SAS基本機能を中心に「DATAステップ」「SASデータライブラリ」「出力」「他社製品とのデータ交換」の4点をご紹介します。

1.1 DATAステップに関する新機能と拡張点
発行
株式会社SASインスティチュートジャパン
テクニカルニュースに関するお問い合わせ先【変数名】
変数名の長さが変更されたのは大きな拡張点の１つです。変更された項目とその長さは以下のとおりです。

テクニカルサポートグループ

TEL:03-3533-3877
FAX:03-3533-3781
E-mail:technews@jpn.sas.com

項 目

V6での長さV8での長さ

8バイト

32バイト

40バイト

256バイト200バイト32,767バイト

・変数名(Arrayステートメントで指定可能な配列含む）
・SASデータセット名※
・SASカタログ名
・マクロ名
・マクロ変数名
・ラベル付きステートメントの「ラベル」名・カタログエントリ名（SAS/AF SAS/FSP他）
・列ラベル
・データセットラベル
・１変数当たりの最大文字数※「SASデータセットの世代管理」を行う場合、28バイトが最大になります。（世代管理については後述）