初心者向けSASチュートリアル: 概要とプログラミング例

⚡ スマートサマリー

SASは、データ分析、ビジネスインテリジェンス、予測モデリングに使用されるコマンド駆動型の統計ソフトウェアスイートです。以下では、そのDATAおよびPROCステップ、製品スイート、3層アーキテクチャ、および無料の学術版について説明します。

  • 🔘 完全形: SASはStatistical Analysis Systemの略で、一般的には「サス」と発音されます。
  • ☑️ 原産地: このプロジェクトはノースカロライナ州立大学で始まり、1976年にSAS Instituteとして法人化された。
  • プログラムの構成: すべてのプログラムは、DATAステップ、PROCステップ、および出力ステップで構成され、それぞれがRUNによって閉じられます。
  • 🧪 Archi構造: クライアント層、ミドル層、バックエンド層は、ブラウザ、アプリケーションロジック、データサーバーを分離する。
  • 🛠️ 出入り自由: SAS OnDemand for Academicsは、廃止されたU​​niversity Editionの後継製品であり、ブラウザ上でSAS Studioを実行します。
  • ⚠️ トレード・オフ: ライセンス費用と非公開のアルゴリズムは、簡単な構文と規制業界からの強力なサポートという利点を阻害する要因となっている。

初心者向けSASチュートリアル

SASとは何ですか?

SAS SASは、統計データの分析と可視化に広く使用されているコマンド駆動型の統計ソフトウェアスイートです。SA​​Sの正式名称はStatistical Analysis Systemです。従業員の生産性と企業の利益向上に役立つ定性的な手法とプロセスを使用できます。SASは、ビジネスインテリジェンス、犯罪捜査、予測分析などの高度な分析にも使用されます。SASは一般的に「サス」と発音されます。

SASでは、データはtracデータパターンを識別して分析するのに役立つ、分類済みでカテゴリ分けされたソフトウェアスイートです。高度な分析、ビジネスインテリジェンス、予測分析、データ管理を実行できるため、競争が激しく変化の激しいビジネス環境で効果的に業務を行うことができます。さらに、SASはプラットフォームに依存しないため、Linux、または任意のオペレーティングシステムでSASを実行できます。 Windows.

他と比較して BIツールSASは、ドラッグ&ドロップインターフェースの使用に加え、プログラムによるデータ変換と分析を幅広くサポートしています。これにより、データ操作と分析を非常に細かく制御できるため、これがSASの最大の強みとなっています。

なぜ SAS が必要なのでしょうか?

簡単な例で SAS の必要性を理解してみましょう。

過去のデータに基づいて顧客の購買パターンを把握したいと考えているeコマース企業を考えてみましょう。この企業は、一般的な洞察を得るために、多数の顧客の何千もの記録を検討する必要があります。

分析に必要なデータがすべて揃っていない可能性があります。例えば、顧客がジャケットを購入しなかった場合、購入を妨げた要因は何だったのでしょうか?このようなデータ不足は、分析に誤差を生じさせる可能性があります。これらの問題をどのように解決すればよいでしょうか?このようなデータをどのように処理すればよいでしょうか?

この作業を手作業で行う場合、数百人のアナリストと数千人時もの作業時間が必要になります。しかし、SAS分析ツールを使用すれば、たった一人のアナリストでわずか数時間で同じ分析を実行できます。SASは不要なデータを排除し、関連情報を最適化します。データが欠落している場合でも結果を予測できるため、より的確な意思決定が可能になります。

代替の SAS ツール

以下のグラフは、SASと最もよく比較される2つのオープンソースツールを並べて示しています。

SASと代替分析ツールRおよびRの比較 Python

R: オープンソースソフトウェアです。学習しやすいです。 R 十分に文書化されている通り、強力な統計機能を提供します。

Python は、もう一つの人気のあるオープンソースのスクリプト言語です。 Python NumPy、SciPy、Matplotlibなどのライブラリをサポートしています。これらのライブラリを使用して、あらゆる統計演算を実行したり、あらゆるモデルを構築したりできます。

SAS: これは、豊富な統計機能と優れたGUIを備え、商用分析市場で広く利用されている分析ツールです。

このSASプログラミングチュートリアルでは、統計解析システム(SAS)について、そしてSASを使って問題を解決する方法について解説します。

SASの歴史

  • SASは1960年代後半、ノースカロライナ州立大学のプロジェクトとして始まった。当時、ジム・グッドナイトはアンソニー・バー、ジョン・サル、ジェーン・ヘルウィグと共に統計解析システムの開発に取り組んでいた。
  • 当初は農業研究用に開発されました。
  • この4人の共同研究者は1976年にSAS Instituteを設立し、グッドナイト氏はそれ以来同社を率いている。
  • Later、とりわけ予測分析、データ管理、BI を含むあらゆるツールに拡張されました。
  • SASは世界最大規模の企業の間で広く導入され続けている。 データ分析 そして、規制に基づく報告義務。

次に、この SAS 言語チュートリアルでは、SAS の機能について学びます。

SASの機能

SAS の主な機能は次のとおりです。

  • 生データファイルや外部データベース内のデータに簡単にアクセスできます。ほぼすべてのデータ形式の読み書きに対応しています!
  • データ入力、編集、検索、フォーマット、変換のためのツールを使用してデータを管理します。
  • 記述統計、多変量解析、予測、モデリング、線形計画法を用いてデータを分析する。
  • 高度な分析は、ビジネス慣行の変更と改善に役立ちます。
  • 完璧なグラフによるレポート作成
  • Opera研究とプロジェクトの管理
  • データの更新と変更
  • 強力なデータ処理言語
  • 優れたデータクレンジング機能
  • 複数のホスト システムと対話する

このSAS初心者向けチュートリアルの次回は、SAS製品スイートについて学びます。

SAS 製品スイート

市場には数多くのSAS製品が出回っています。以下に、特に人気のある製品をいくつかご紹介します。

名前 詳細説明
ベースSAS Base SAS ソフトウェアはハードウェアの俊敏性を提供し、あらゆる種類のコンピューティング環境に統合します。
SAS/グラフ このツールは、構造化データをグラフに表現するのに役立ちます。
SAS/統計 このツールは、さまざまな種類の回帰、統計分析分散、回帰、心理測定分析を実行するのに役立ちます。
SAS/ETS 予測に使用されます。 時系列分析の実行に役立ちます。
SAS/IML 対話型行列言語はIMLと略されます。このツールは、数式を革新的なプログラムに変換するのに役立ちます。
SASエビ ビジネス インテリジェンス アプリケーション用のツール
SAS グリッドマネージャー データ管理機能とデータ分析用のプログラミング言語を提供するコアコンポーネントです。
SAS/OR 用のツール Opera研究
SAS/QC 品質管理に使用する
SAS/エンタープライズマイナー データマイニング
SAS/PH 臨床試験分析
SAS/AF アプリケーション機能を提供します
エンタープライズガイド GUIベースのコードエディター兼プロジェクトマネージャーです

次に、この SAS チュートリアル ガイドでは、SAS アーキテクチャについて学習します。

SAS Archi構造

下の図は、導入プロセスを3つの階層に分けて示しています。

SASの3層アーキテクチャ(クライアント層、ミドル層、バックエンド層を示す)
ArchiSASの構造

SAS アーキテクチャは主に 3 つの部分に分かれています。

  • クライアント層
  • 中間層
  • 後部層

クライアント層

クライアント層は、アプリケーションがマシンにインストールされ、ユーザーが座っている場所です。 これは、ポータルとそのコンテンツを表示するために使用されるコンポーネントで構成されます。 また、標準の HTTP または HTTPS プロトコルを介してポータルと対話するために使用される標準の Web ブラウザも含まれています。 また、SAS Web アプリケーションのファイアウォールをフレンドリーにするのにも役立ちます。

中間層

ミドルティアは、企業情報への集中アクセスポイントを提供します。コンテンツへのすべてのアクセスは、このティアで動作するコンポーネントによって処理されます。ビジネスロジックと表示ロジックを分離することで、ミドルティアのロジックを最大限に活用できます。さらに、集中アクセスポイントにより、セキュリティルールの適用、ポータルの管理、コード変更の管理が容易になります。

中間層は次の機能をホストします。

SAS Information Delivery Portal Web アプリケーション: これはJSPのコレクションです。 Java サーブレット、 JavaBeans、およびその他のクラスとリソース。これらのコンポーネントは、エンタープライズ ディレクトリに保存されている情報にアクセスして、ユーザー向けにカスタマイズ可能なインターフェイスを作成するのに役立ちます。

サーブレット エンジン: サーブレット エンジンはサーブレット コンテナとも呼ばれます。 SAS Information Delivery Portal Web アプリケーションの管理を担当します。 サーブレット エンジンは実行時環境を提供します。 同時実行性、デプロイメント、ライフサイクル管理などを提供します。

Webサーバー: ウェブサーバーは、ウェブサイトをホストするために使用できるサーブレットエンジンのサービスを提供します。このサービスにはポータル経由でアクセスする必要があります。

バックティア

バック層は、ビジネス オブジェクトを含む可能性のあるデータ サーバーと計算サーバーが実行される領域です。 エンタープライズ ディレクトリ サーバーです。 エンタープライズ ディレクトリ サーバーは、企業全体に存在するコンテンツに関するメタデータを維持します。

SAS をダウンロードしてインストールする方法

版に関する注記: 以下のウォークスルーでは、SAS Institute が 2021 年に廃止した無料のデスクトップ版および AWS 版である SAS University Edition について説明します。無料の代替版は SAS OnDemand for AcademicsブラウザでSAS Studioを実行する VirtualBox イメージであり、管理するAWSインスタンスはありません。SASはまた、 SAS Viya for Learners クラウドベースのコースワークについては、いずれかに登録し、ここに示されているほぼ同じSAS Studioの画面を使用してください。

お使いのマシンにローカルインストール

ステップ1)指定されたリンクからSASをダウンロードします。

SASの無料学術ソフトウェアページにアクセスし、「無料ソフトウェアを入手」をクリックしてください。

SASの無料学術ソフトウェアダウンロードページ(「無料ソフトウェアを入手」ボタン付き)

ステップ 2) を選択します Operaティングシステム

下記に示すように、お使いのシステムに合わせてオペレーティングシステムを選択してください。

OperaSASダウンロードページのシステム選択画面

ステップ 3) 仮想化ソフトウェアをダウンロードしてインストールする

SAS University Editionには、仮想化ソフトウェアが必要です。 VirtualBox インストールする前にインストールしておく必要がありました。ダウンロード画面は次のようになっていました。

VirtualBox ローカルSASインストール前に仮想化ソフトウェアのダウンロードページが必要です

画面に表示される手順に従ってSASをインストールしてください。 VirtualBox また、ローカルでのインストールは時に困難な場合があるため、代わりに以下のAWSを利用する方法が推奨されました。

AWSのインストール

注意: SAS University EditionのAWS Marketplaceの掲載が取り下げられたため、 URL元の手順で引用されているsはもはや解決しません。AWSのsubscribe-configure-launchフローは、購読するSAS Marketplaceイメージの種類に関係なく変更されないため、以下の手順はそのまま維持されています。

AWSにSASをデプロイできます。無料利用枠の対象でした。

ステップ1) AWS MarketplaceでSAS University Editionの商品ページを開きます。下の製品ページに表示される「購読を続ける」をクリックします。

AWS Marketplaceの出品ページで、「購読を続ける」ボタンがハイライト表示されている。

ステップ2) 次の画面で、利用規約に同意します。

AWS Marketplaceの利用規約画面に「利用規約に同意する」ボタンが表示されます。

ステップ3) 購読申請は保留中で、承認には最大10分かかります。次の画面が表示されます。

リクエストが承認された際に、AWSサブスクリプション保留中メッセージが表示される

ステップ4) ページを更新すると、購読が確認されます。「設定に進む」をクリックしてください。

「設定に進む」ボタンが表示されたAWSサブスクリプション画面を確認しました。

ステップ5) 設定をデフォルトのままにして、「起動を続行」をクリックします。

デフォルト設定のAWS設定画面と「起動に進む」ボタン

ステップ6) Rev設定ページを表示します。キーと値のペアを入力します。その他の設定はデフォルトのままにしておきます。「起動」をクリックします。

AWS起動レビューページで、起動をクリックする前にキーと値のペアを入力します。

ステップ7) AWS Marketplaceライブラリにアクセスし、ここに示されているように「インスタンスの表示」をクリックします。

AWS Marketplace ライブラリページ(インスタンスの表示リンク付き)

ステップ8) 下のポップアップ画面をご覧ください。

  1. インスタンス ID をメモします。 これがあなたのパスワードです
  2. 「ソフトウェアにアクセス」をクリックします

インスタンスIDをパスワードとして使用し、アクセスソフトウェアへのリンクを表示するインスタンスポップアップ

ステップ9) ステップ8でクリックした後に表示されるポップアップで:

  1. ユーザーの資格情報を入力します。 ID: sasdemo パスワード: ステップ 8 でメモしたインスタンス ID
  2. [サインイン]をクリックします

sasdemoユーザーIDとインスタンスIDパスワードを入力するサインインポップアップ

ステップ10) 下記にウェルカム画面が表示されます。

サインインに成功すると、SAS Studioのウェルカム画面が表示されます。

トラブルシューティング

接続できない場合は、お住まいのリージョンのEC2コンソールのセキュリティグループページを開き、受信ルールと送信ルールを「すべて」に設定してください。

SASの使い方は?

SASソフトウェアを効果的に使用するには、データのアクセス、データの管理、分析、プレゼンテーションという4つの手順に従う必要があります。下の図は、その順序を示しています。

SASを使用するための4つのステップ:データのアクセス、データの管理、分析、およびプレゼンテーション

SASの使い方

データへのアクセス:

SAS を使用すると、任意の形式でデータにアクセスできます。

システム上のファイルに保存されているデータでも、別のデータベースシステムに保存されているデータでも、どこに保存されているデータにもアクセスできます。 Oracle ファイル、SASデータベースファイル、生データベースファイル、またはシンプルなXLS/CSVファイルなど。これらを使用することで、データに簡単にアクセスできます。

データの管理:

SASは優れたデータ管理機能を提供します。特定の条件に基づいてデータをサブセット化したり、変数を作成したり、データをクリーンアップおよび検証したりできます。同様のタスクを実行できるツールは他にもありますが、SASを使えばこれらの作業を容易に行うことができます。

SASには、プログラミングを容易にする明確に定義されたライブラリとプロセスが備わっています。さらに、変数の作成やデータのサブセット化はワンステップで完了します。これにより、複雑なアルゴリズムを記述する必要がなくなり、たった1行のコードで済みます。

分析:

SASを使用すると、さまざまな種類の分析を実行できます。

  • 平均計算の頻度をチェックします
  • 回帰と予測
  • 決定木

SASはこれらの分析をすべて容易に処理します。正確な予測のための強力なツールであり、他のツールと並んで位置づけられています。 データ分析ツール 企業レポート作成に使用されます。

プレゼント:

データを適切に視覚化すれば、視聴者は容易に理解できます。そのため、ツールがデータを適切な方法で提示することが不可欠です。SA​​Sはまさにそれを実現します。優れたプレゼンテーション機能を備えています。

以下を生産できます:

  1. リストレポート
  2. 概要レポート
  3. グラフレポート
  4. レポートを印刷する

SAS プログラムの例

次のセクションでは、これらの段階がSASコードでどのように表現されるかを示します。

SAS プログラムは XNUMX つの必要なステップで構成されています。

  • データステップ
  • 処理ステップ
  • 出力ステップ

データステップ

データステップでは、必要なデータセットを SAS メモリにロードし、データセットの正しい変数を見つけます。 記録も取り込みます。 データ ステップを使用して次のことができます。

  • SAS データセットにデータを入力する
  • 値を計算する
  • データの確認または修正
  • 新しいデータセットを作成する

DATA文の構文は次のとおりです。

構文

DATA data_set_name;		#Give a name to the dataset
INPUT var1,var2,var3; 		#Declare variables in the dataset.
NEW_VAR;			         #Define new variables.
LABEL;			      	#Give variables a label
DATALINES;		      	#Provide data
RUN;

例:

次の例は、変数の定義方法、データセットの名前付け方法、新しい変数の作成方法、およびデータの入力方法を示しています。この例では、文字列変数には末尾に「$」が付き、数値には「$」が付かないことがわかります。

INPUT ID $ NAME $ SALARY DEPARTMENT $;
comm = SALARY*1.50;
LABEL ID = 'Emp_ID' comm = 'COMMISION';
DATALINES;
1 Tom 5000 IT
2 Harry 6000 Operations
3 Michelle 7000 IT
4 Dick 8000 HR
5 John 9000 Finance 
;
RUN;

注:SASステートメントを実行するには、RUNコマンドを指定する必要があります。

PROCステップ

特定の分析または機能を実行して、結果とレポートを作成します。

構文

PROC procedure_name options; #The name of the proc.
RUN;

例:

与えられた例では、 手段 データセット内の数値変数の平均値を出力するプロシージャ。

PROC MEANS;
RUN;

出力ステップ

条件付き出力文を使用して、データセットのデータを表示できます。

構文

PROC PRINT DATA = data_set;
OPTIONS;
RUN;

すべてのSASプログラムは、入力データの読み込み、データの分析、分析結果の出力を行うために、上記のすべての手順に従う必要があります。 RUN 各ステップの最後にあるステートメントにより、そのステップの実行が終了します。

完全な SAS プログラム

以下に、上記の各ステップの完全なコードを示します。

DATAステップ、PROCステップ、OUTPUTステップを組み合わせた完全なSASプログラム

出力:

プログラムを実行すると、以下の3つの画面に表示される印刷されたデータセット、記述統計、および最終レポートが生成されます。

SASの出力ウィンドウに、5人の従業員の記録の印刷データセットが表示されている。

PROC MEANSの出力リストには、数値変数の記述統計量が表示されます。

PROC PRINTプロシージャによって生成された最終SASレポート出力

SAS はどこで使用されますか?

以下に、いくつかの重要な SAS アプリケーションを示します。

業種 使用法
薬剤 統計分析、レポート作成
電気通信 ETL、レポート、データマイニング、予測
財務情報 ETL、レポート、データマイニング、財務調査
予測モデリング DBマーケティング、アクティビティベースの管理
健康 ETL、レポート、データマイニング

SAS 対R

以下の表は、SASとRをコスト、学習曲線、およびグラフ表示の観点から比較したものです。

SAS R
SAS は商用ソフトウェアであるため、金銭的投資が必要です。 Rはオープンソースソフトウェアです。したがって、誰でも利用できます。
SAS は習得が最も簡単な分析ツールです。 SQL の知識が限られている人でも、すぐに習得できます。 R では、複雑で長いコードを記述する必要があります。
SAS は大企業に非常に好まれており、技術的に高度でユーザーフレンドリーです。 Rは急速に発展していますping ソフトウェアですが、定期的にアップグレードする必要があります。
SAS には優れたグラフィカル サポートがありますが、カスタマイズは提供されていません。 R ツールのグラフィカル サポートは非​​常に貧弱です。

SASの利点

  • SASは、プログラミングの知識がなくても習得できる簡単な構文を備えています。
  • 大規模なデータベースを簡単に処理できる機能
  • SAS は、簡単にデバッグできる非常に理解しやすい言語です
  • その「ログ」ウィンドウにはエラーが明確に表示されるため、コードのデバッグが容易になります。
  • SASはアルゴリズムを徹底的にテストおよび分析するのに役立ちます
  • SASは完全に保護されているため、tracオフィスでライセンスなしでそれを行う
  • プログラミングの知識がないユーザーでも統計計算を容易に行えるようにします。
  • 大規模データベースを効率的に処理します。

SASのデメリット

  • 費用が高いのは、個人または組織が適切なライセンスなしではすべてのアプリケーションを使用できないためです。
  • SASはオープンソースではないため、SASで使用されているアルゴリズムは一般には利用できません。
  • SAS におけるテキストマイニングは非常に面倒で困難なプロセスです。
  • コミュニティの回答やサードパーティのパッケージは、オープンソーススタックで使用されているものよりも少ない。 データサイエンス (NAIST) と 機械学習 作業。

よくあるご質問

DATAステップは手続き型です。行ごとのロジックを記述し、生のテキストファイルを読み込むことができます。PROC SQLは宣言型です。必要な結果を指定すると、プロシージャが結合処理を計画します。ほとんどのプログラムは両方を組み合わせて使用​​します。

ライブラリとは、SASデータセットを格納するフォルダまたはデータベースを指すニックネームです。LIBNAMEステートメントによって作成され、例えばディレクトリにマッピングされた名前として使用されます。WORK内のテーブルはセッション終了時に消滅しますが、ライブラリテーブルは永続的に保持されます。

PROC IMPORTはファイルを読み込み、SASデータセットを書き込みます。DBMSはソースタイプに名前を付け、GETNAMESオプションは最初の行から列名を取得します。繰り返しロードする場合は、DATAステップ内のINFILEステートメントを使用することで、列タイプをより細かく制御できます。

SAS認定アソシエイト:SAS 9.4を使用したプログラミングの基礎(試験コードA00-215)は、入門レベルの資格です。データのアクセス、探索、準備、および要約を網羅しています。予約前に、SAS認定サイトで最新の料金、問題数、合格点を確認してください。

初心者は通常、数週間の継続的な練習で、DATAステップ、一般的な手順、基本的なレポート作成といった作業に必要なスキルを習得できます。マクロプログラミング、PROC SQLのチューニング、統計処理などは、習得にかなりの時間を要し、作業分野によっても異なります。

SASは、検証済みで監査済みのソフトウェアが重要な製薬、銀行、政府報告の分野で圧倒的なシェアを誇っている。 Python オープンソースの分析と機械学習を支配している。両方を学ぶことは現実的であり、多くのチームが現在、 Python SAS環境内。

AIアシスタントは、平易な説明からDATAステップとPROCの骨組みを作成し、難解なログ警告を解説し、変数型の不一致に対する修正案を提示します。生成されたコードは必ずサンプルデータに対して実行し、ログを確認してください。アシスタントはあなたのデータを見ることはできません。

GitHubコパイロット SAS構文を次のようなエディタで提案します VS Code.sas ファイルはプレーンテキストなので、提案はより弱いです。 Python 公開されているSASコードが少ないため、完了したコードはすべて検証すべき下書きとして扱うべきです。