|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 本章では、ファイル操作に関するコードサンプルを例示しています。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
【サンプル1】 : DATA文を使用したケース
DATA SASデータセット名; INFILE 'パス名+CSVファイル名' DLM=','; INPUT name$ address$ ・・・ 変数名n ; その他のSASステートメント RUN; 文字タイプの項目を読み込む場合は、変数名の後に「$マーク」を付けて文字変数であることを宣言します。 【サンプル2】 : PROC文を使用したケース PROC IMPORT OUT= libref.data DATAFILE= "パス名+CSVファイル名" DBMS=CSV REPLACE; GETNAMES=YES; DATAROW=2; RUN; REPLACEオプションは 出力データセットが存在したら置き換えを行います。 GETNAMESステートメント 先頭行を変数名として使う場合に「YES」と指定します。 DATAROWステートメントでデータの開始行を指定します。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
DATA SASデータセット名; INFILE 'パス名+CSVファイル名'; INPUT name$ 1-8 address$ 9-28 ・・・ 変数名n 95-100; その他のSASステートメント RUN; 桁数が揃えて入力されているファイルを読み込む場合は変数名の後ろにカラムを明記します。 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PROC SQL; CONNECT to ODBC (noprompt="driver=microsoft access driver (*.mdb);dbq=(mdbファイルのパス)"); CREATE TABLE (SASデータセット名) as SELECT * from connection to odbc (select * from "(mdbファイルのテーブル名)"); DISCONNECT from ODBC; QUIT; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DATA SASデータセット名1 SASデータセット名2; SET 既存SASデータセット名; IF sex = 'M' THEN OUTPUT SASデータセット名1 ; ELSE OUTPUT SASデータセット名2 ; RUN; 既存のSASデータセットをもとに、男性のデータからなるSASデータセット1、女性のデータからなるSASデータセット2を作成します。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Magazines :SAS Technical News Volume4 Number4 の「Q&A」を参照してください 「マクロ実行時にデータセットの情報を動的に入手する」方法は、 Magazines :SAS Technical News Volume5 Number3 の「Q&A」に記載がありますので参照してください |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SAS社FAQサイト Technical Support Frequently Asked Questions に記載があります | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Magazines :SAS Technical News Volume4 Number2 の「Q&A」 または Magazines :SAS Technical News Summer 2002 の「Q&A」を参照してください |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Magazines :SAS Technical News Volume4 Number2 の「Q&A」を参照してください | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| フォルダーの作成 OPTIONS NOXWAIT NOXSYNC; X "md (パス名)"; フォルダーの削除 OPTIONS NOXWAIT NOXSYNC; X "rd (パス名)"; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DATA file-3; SET file-1 file-2; RUN; SETステートメントは、元になるSASデータセットを指定するステートメント この場合、file-1のうしろ(縦)にfile-2のオブザベーションが追加される |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
file-1
|
file-2
|
→ | file-3
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DATA file-2; SET file-1; total = tanka * suryo; RUN; file-1の、tanka、suryoからtotalを計算し、file-2を作成する |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
file-1
|
→ | file-2
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| 「任意の変数の後に変数を追加する」方法は、 Magazines :SAS Technical News Winter 2006 の「Q&A」に記載がありますので参照してください |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DATA file-2; SET file-1; DROP tanka; RUN; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
file-1
|
→ | file-2
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DATA file-2; SET .file-1.. (WHERE=(tanka=条件1)); RUN; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PROC COMPARE DATA = file-1 COMP=file2 ALLOBS; RUN; 変数を絞って比較する場合 PROC COMPARE DATA = file-1 COMP=file2 ALLOBS; VAR (変数1) (変数2) 〜; RUN; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SAS社FAQサイト Technical Support Frequently Asked Questions に記載があります | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Magazines :SAS Technical News Summer 2000 の「Q&A」を参照してください | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Magazines :SAS Technical News Spring 2005 の「Q&A」を参照してください | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| FILENAME exceldde dde "excel | sheet1!r1c1:r3c3" notab; DATA SASデータセット名; SET file-1; file exceldde dsd dlm='09'x; PUT tanka suryo total; RUN; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
file-1
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 「Excel ファイルを出力する際に名前をつける」方法は、 Magazines :SAS Technical News Volume5 Number3 の「Q&A」に記載がありますので参照してください |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PROC EXPORT DATA = SASデータセット名 OUTFILE= "パス名+CSVファイル名" DBMS=CSV REPLACE; RUN; |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ご意見・ご感想をお寄せください。info@beagle-hc.com ‖ このサイトについて | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Copyright 2006 - 2009 uTRAM Corp. All Rights Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||