SASを使用してXMLファイルをSASデータセット/Excel/CSVファイルに変換するにはどうすればよいですか
2 に答える
残念ながら、「XML」ファイルは「テキスト ファイル」のような非常に一般的な用語であるため、それよりも多くの情報が必要です。
XML マップがある場合、または XML マップを作成できる場合、または xml ファイルの形式が十分に明らかな場合、SAS はいくつかの XML ファイルを自動的にインポートします。
詳細については、http://support.sas.com/documentation/cdl/en/engxml/62845/HTML/default/viewer.htm#a002484784.htmを参照してください。
その他の XML ファイルは、マップを使用しても読みにくい場合があります。特に、レイアウトが非常に表形式でない場合はそうです。これらの場合、通常はデータ ステップを使用してテキスト ファイルとして読み取り、自分で解析するのが最も簡単です。そのための非常に単純化されたコード:
data want;
infile "myfile.xml" lrecl=100 pad truncover;
input @1 curline $100.;
if substr(curline,1,7)='<mytag>' then do;
mytag = substr(curline,8,find('</',curline)-7);
end;
run;
これは明らかに非常に面倒です。正規表現を使用して解析することをお勧めします。いずれにせよ、xml ファイル用に高度にカスタマイズする必要があります。表形式でない場合は、明らかに何らかの作業を行う必要があるからです。このルートに行かなければならない場合は、いくつかの解決策をグーグルで検索できますが、最初に XML マップを試してください。インストールに SAS XML Map ユーティリティ (別のプログラム) が含まれている場合は、それを実行してみてください。そうでない場合は、サイト管理者がインストールできるかどうかを確認してください。
XML->dataset の場合、次のこともできます。
libname cata xml "path\name.xml";
data datasetname;
set cata.datasetname;
run;