• 粉末回折データベース
    ICDD PDF-5 / PDF-4 / PDF-2
  • 粉末回折データ相同定 Match!
  • 無機化合物の結晶構造DB
    Pearson's Crystal Data
  • 結晶構造可視化 Diamond
  • 粉末回折から構造決定
    Endeavour
    • 質的データ分析 MAXQDA
      • 画像解析ソフトウェア MIPAR
      • ライブラリ

        • 数学・統計のコレクション
          Numerics.NET
        • Stataコマンド早見表

          利用シーン別に代表的なコマンドをご紹介します。各コマンドの説明と使用例を併記しております。
          使用例に記載のコマンドをコマンドウィンドウやDoファイルに入力して実行いただくことで実際の処理をご確認いただけます。

          Stataをマウス操作で使用されている方も「db コマンド名」でダイアログを開くことができますので、
          キーワードでページ内検索 → 対応するコマンドを見つける → dbコマンドでダイアログを開く、といった形でご利用ください。
          (一部、ダイアログの対応のないコマンドがございます。コマンド操作をご利用ください。)

          ヘルプファイルの活用 初めて使うコマンドは、Examplesを実行してみる

          初めて使うコマンドは、ヘルプファイルのExamplesに掲載されているコマンド例を実行してみましょう。コマンドをどのように使えばよいか実例を通して知ることができます。

        • helpコマンド(help コマンド名)を実行します。例えば、help regress
        • 検索したコマンドのヘルプファイルが表示されます。
        • ヘルプファイルを下の方にスクロールして、 Examples という項目を確認します。
        • 記載されているコマンドをコピーし、コマンドウィンドウに貼り付けて実行してみましょう。
        • Stata起動後の作業フォルダの設定やログを記録するためのコマンド、検索やヘルプ表示のコマンドなどをご紹介します。
          また、Stataの日本語メニューを検索する機能を別ページで公開しております。ご参考ください。

          項番コマンド説明使用例 1cdパスを指定して作業フォルダの変更
          パスを指定しなければ現在の作業フォルダを表示します。
          2dirWindows環境で作業フォルダ内のファイル名を表示
          3lsMac, Unix環境で作業フォルダ内のファイル名を表示
          4logログの開始、停止、再開、終了
          結果ウィンドウに表示される内容をログファイルに記録します。
          作業内容を記録しておくのに便利な機能です。
          5searchキーワードを指定して検索
          6helpコマンドを指定してヘルプファイルを表示
          知らないコマンドやエラーコードが生じたときなど、
          使用頻度の高いコマンドです。
          7dbコマンドを指定してダイアログボックスを表示
          コマンドは覚えているがメニューのどこにあるかわからない、という時に
          瞬時にダイアログボックスを開ける便利なコマンドです。

          データの入出力(インポートとエクスポート)

          Stataのサンプルデータやさまざまな形式のデータを読込むためのコマンドをご紹介します。また、Stata上のデータをStata形式のデータとして保存したり、特定の形式でエクスポートするためのコマンドをご紹介します。下記の使用例でエクスポートしたファイルは作業フォルダに格納されます。作業フォルダはcdコマンドまたはpwdコマンドで確認できます。

          項番コマンド説明使用例 1sysuseStataにインストールされているサンプルデータの使用
          clearオプションでメモリ上のデータの置換
          2webuseWebサイト上のデータの使用
          3useStataフォーマットのデータをStata上に読込み
          4import excelExcelファイルのインポート
          5import delimitedCSVファイルなどデリミタで区切られたデータのインポート
          6import sasSASファイルのインポート
          7import spssSPSSファイルのインポート
          8saveファイル名を指定してStata形式のデータを保存
          9export excelファイル名を指定してデータをエクセルファイルへ保存
          10export delimitedファイル名を指定してデータをテキストファイルへ保存
          11frameStataで複数のデータセットを読み込むにはframeを使用します。
          フレームは名前を付けて生成する必要があります。
          Stata起動時のフレーム名はdefaultです。
          3lookfor変数名と変数ラベルに対する文字列検索

          文字列検索の例

          4codebook変数の概要を表示
          変数ラベル、変数の型、一意な値の数、欠損値の数などが表示されます。
          変数の概要を把握するのに便利なコマンドです。

          表示の例

          5summarize変数ごとの要約統計量を表示
          変数ごとの観測数、平均、標準偏差、最大値、最小値を表示します。
          detailオプションを指定するとパーセンタイル値、尖度、歪度を表示します。

          表示の例

          6editデータエディタでデータを編集
          7browseデータエディタでデータを閲覧
          8list各変数の値の一覧を表示

          表示の例

          9display文字列や数値を表示

          表示の例

          10gsort指定した変数の昇順または降順に並び替え
          11duplicates重複した観測行のレポート、タグ付け、削除など
          12levelsof変数の一意(ユニーク)な値の一覧
          13correlate相関係数の表示
          指定した変数の相関行列を表示します。
          covarianceオプションを指定すると共分散行列を表示します。
          1tabulate集計表
          2tabstat簡単な統計表

          統計表の例

          3table頻度、要約、コマンド結果の表
          カテゴリー変数に対する集計表や
          複数のコマンドを実行して得られる値を1つの表に
          まとめることができます。
          4collapse要約統計量のデータセット生成
          集計した統計量をデータセットとして保持します。
          集計した値を用いて分析を行いたい場合に便利なコマンドです。

          データ集計の例

          5dtable要約統計量の表
          平均、分散、中央値など要約統計量の表を作成します。
          作成した表は、Excel, Word, PDF, html など様々な形式で出力できます。
          webuse nhanes2 dtable weight bmi, by(highbp, tests) dtable weight bmi, by(highbp, tests) export(mytable.pdf) 6etable推定結果の表
          推定コマンドで推定した結果をもとに表を作成します。
          作成した表は、Excel, Word, PDF, html など様々な形式で出力できます。
          webuse lbw regress bwt age lwt estimates store model1 regress bwt age lwt i.smoke i.ptl estimates store model2 etable, estimates(model1 model2) mstat(N) mstat(r2) export(mytable.xlsx)

          データの加工

          データの形式の変換や複数のデータを結合するためのコマンド、データから特定の条件に合う観測行を抽出するコマンド、変数を生成するコマンドなどデータ加工に関するコマンドをご紹介します。

          項番コマンド説明使用例 1append複数のデータの結合(観測行の追加)
          dtaファイルを対象にデータを縦方向に結合します。
          2merge複数のデータの結合(変数の追加)
          mergeコマンドを実行すると変数_mergeが生成されます。
          複数回マージする場合は、その都度_mergeを削除する必要があります。
          変数を削除するには、dropコマンドを使用します。(例:drop _merge)

          データ結合の例

          3reshapeデータの形式変換
          データをワイド形式またはロング形式に変換します。

          形式変換の例

          4generate新たな変数の生成
          5egengenerateコマンドの拡張
          変数を生成する際に様々な関数を使用できます。
          (詳しくは、help egen)
          6drop指定した変数の削除
          特定の変数を削除したい場合に使用します。

          削除の例

          7keep指定した変数のみ保持
          残しておきたい変数が少数の場合、
          dropコマンドではなくkeepコマンドが便利です。

          保持の例

          8drop if 条件を満たす観測行の削除

          削除の例

          9keep if条件を満たす観測行のみ保持

          保持の例

          10rename変数名の変更
          ワイルドカード*や?を使用して複数の変数名を
          一括で変更することも可能です。
          (詳しくは、help rename group)
          11replace既存の変数の値の置換
          if修飾子を用いて特定の条件に一致する行の値を置換します。
          in修飾子を用いて指定した行の値を置換します。
          12destring文字列変数を数値変数に型変換
          強制的に数値に変換するには force オプションを指定します。

          型変換の例

          13tostring数値変数を文字列変数に型変換

          型変換の例

          14format変数の出力形式を設定
          数値の表示桁数、文字の表示形式、日付と時刻の表示形式など
          15expand観測行の複製
          16encode文字列変数を数値にコード化
          17decode数値変数の値ラベルを文字列変数に変換

          Stataでは、データに対してデータラベル・変数ラベル・値ラベルを付与でき、データを理解するのに役立ちます。 以下では主にラベルを付与するためのコマンドを紹介しますが、describeコマンドやcodebookコマンドを実行してラベルの内容を確認できます。

          項番コマンド説明使用例 1label define値ラベルの定義
          2label values変数を指定して値ラベルを付与
          3label list値ラベルの一覧の表示
          4label variable変数とラベル名を指定して変数ラベルの付与
          変数に対する説明を変数ラベルに記述することで、
          データの理解に役立ちます。
          (例:変数hbpに対する変数ラベル"High blood pressure")
          5label dataラベル名を指定してデータラベルの付与

          マクロ変数

          マクロ変数にはグローバルとローカルの2種類があります。マクロ変数を活用することで数値や文字列を一時的に保持したり、参照することができます。その他、Stored results、繰返し処理、条件分岐などでも使用されます。(Stored resultsとは、コマンドを実行後にメモリ上に格納されている値のことで、各コマンドのヘルプファイルの下部に記載があります。コマンドを実行するたびにこのメモリ上の値は書き換わります。)

          項番コマンド説明使用例 1globalグローバルマクロ変数
          文字列を格納する場合:global gm_str "格納する文字列"
          数値を格納する場合:global gm_num = 1.23
          格納した値を表示する場合:display "$gm_str $gm_num"
          値を参照する場合は、マクロ名の先頭に$マークを付けます。
          2localローカルマクロ変数
          文字列を格納する場合:local lm_str "格納する文字列"
          数値を格納する場合:local lm_num = 1.23
          格納した値を表示する場合:display "`lm_str' `lm_num'"
          値を参照する場合は、マクロ名を ` と ' で囲います。
          3macro listマクロ変数の一覧表示
          macro list
        • globalマクロ変数は作成してから、削除するかStataを閉じるまで参照できます。
        • localマクロ変数は、その変数が生成されたDoファイルやプログラム内でのみ参照され、一連の処理が終了すると削除されます。
        • localマクロ変数はDoファイル内などの限られた範囲でのみ参照されるため、他のプログラムで同名のマクロ変数が作成されていないかを 気にする必要がありません。このため、基本的にlocalマクロ変数を使用します。

          繰返し処理と条件分岐

          繰返し処理と条件分岐を行うためのコマンドを紹介します。Stataにおける繰返し処理のイテレータ(反復子)や条件分岐の条件式の記述にはマクロ変数を使用します。Doファイルにて使用例をお試しください。

          項番コマンド説明使用例 1foreachリストの要素ごとに括弧内のコマンドを実行
          foreach in と foreach of の2通りの指定が可能です。
          in の後にスペース区切りで要素を記述します。
          of を使用する場合、リストタイプを指定する必要があります。
          リストタイプ:local, global, varlist, newlist, numlist
          (詳しくは、help foreach)
          2forvalues指定した範囲の値ごとに括弧内のコマンドを実行
          範囲の指定例1: 5/10 ⇒ 5, 6, 7, 8, 9, 10
          範囲の指定例2: 5(5)30 ⇒ 5, 10, 15, 20, 25, 30
          (詳しくは、help forvalues)
          3while指定した条件式が真の間、括弧内のコマンドを実行
          使用例では、ローカルマクロ変数を使用して変数を生成しています。
          (詳しくは、help while)
          4ififコマンド(if修飾子とは異なる)
          if の後に条件式、コマンドを記述します。
          条件式が真であればコマンドを実行し、
          偽であれば実行しません。
          5if elseelseコマンド
          ifコマンドで指定した条件式が偽の場合に
          実行したい処理を記述します。

          Stataでは様々な統計解析を行うことができますが、ここでは一部の代表的なコマンドをご紹介します。

          Stataの一部の推定コマンドについて関連を示すマップを作成しました。推定コマンドの関係性を理解する資料としてお役立てください。

          推定コマンドの関連マップ

          Stataに新しく実装された機能をまとめて紹介しております。合わせてご参考ください。

          Stataでコマンドを実行すると結果ウィンドウに計算結果が表示されますが、より詳細な情報がメモリ上に格納されます。 このメモリ上に格納されている結果のことを Stored results と呼びます。ここでは、Stored results を参照するためのコマンドをご紹介します。 Stored results として格納される項目はコマンド毎に異なるため、どのような項目が保持されているかについてはヘルプファイル内の Stored results をご確認ください。
          また、計算に要した実行時間を計測するためのコマンドやエラーが生じる場合にデバッグの助けとなるコマンドをご紹介します。

          項番コマンド説明使用例 return list 一般的なコマンドのStored resultsを表示
          直近に実行したコマンドの計算結果のみを保持します。
          後続の処理で値を参照したい場合、マクロ変数に退避させる必要があります。
          ereturn list 推定結果に関するStored resultsを表示
          直近に実行した推定コマンドの計算結果を保持します。
          creturn list システム上のパラメータの表示
          matrix list 行列の表示
          推定された係数や分散共分散行列は行列として格納されます。
          そのため、ereturn listコマンドでは具体的な値は表示されません。
          行列の内容を表示するにはmatrix listコマンドを使用します。
          set rmsg on
          set rmsg off 実行時間の表示
          コマンドを実行した際に計算処理に要した時間を表示します。
          コマンド毎の時間に加えて、Doファイル単位でも実行時間を表示します。
          set trace on
          set trace off プログラムの実行をトレース
          デバッグ中にプログラムの実行を追跡するために使用します。
          エラーが生じる原因を調査したい場合「set trace on」を実行後、
          コマンドを実行してください。
          capture
          noisily プログラム実行中にエラーが生じても処理を止めたくない場合に使用します。
          コマンドの冒頭に「capture : 」と記述するとエラーが生じても処理を止めません。
          capture を使用すると実行結果が表示されません。
          結果を表示したい場合は noisily コマンドを併用します。

          regressコマンドなど推定コマンドを実行後、推定結果の診断や保存するためのコマンドが用意されています。 ここでは推定後コマンドの一例を示しますが、推定コマンドごとに実行できる推定後コマンドは異なります。 どのような推定後コマンドがあるかを確認するには、「help コマンド名 postestimation」を実行して表示されるヘルプファイルをご覧ください。 (例:help regress postestimation)

          項番コマンド説明使用例 predict 推定結果をもとに予測値の算出
          estat hettest 不均一分散の検定
          estat vif 分散拡大要因
          多重共線性が生じていないか確認するための指標です。
          estat ic AIC(赤池情報量規準)、BIC(ベイズ情報量規準)の表示
          estat vce 推定された分散共分散行列
          estimates store メモリ上に推定結果を保存
          名前を指定して推定結果を保存します。
          保存した推定結果は、estimates restoreコマンドで呼び出せます。
          estimates save ファイル名を指定して推定結果を保存
          「ster」という拡張子のファイルが生成されます。
          保存したファイルは、estimates useコマンドで読込みます。
          rvfplot 残差と予測値の散布図

          集計表や推定結果の表をExcelファイルに出力したい場合は、 collect export または etable , export() コマンドなどを使用して出力します。 また、グラフを出力したい場合は、 graph export コマンドを使用して出力します。
          ここでは、Stataで計算した結果をより柔軟にExcelファイルに出力できる putexcel コマンドを ご紹介します。Excelファイルの指定( putexcel set )、出力( putexcel )、 保存( putexcel save )など複数のコマンドを使用して柔軟にExcelファイルに出力できます。
          日常的に行う定型的なExcelファイルへの出力作業は、これらのコマンドを活用することで手作業の手間を省き、 短時間で正確に行うことができます。

          項番コマンド説明使用例 putexcel set ファイル名を指定して、
          出力対象となるExcelファイルを設定します。 putexcel set "出力結果.xlsx" putexcel describe putexcel clear putexcel セル参照 = 値 指定したセル参照に値(数値や文字列)を出力します。
          フォーマットオプションを指定して、
          セルの背景色、罫線、フォントなどを指定できます。 putexcel set "出力結果.xlsx" putexcel B2 = "出力テスト" putexcel B3 = "`c(current_date)'" putexcel B4 = 1+4/2 putexcel save putexcel clear putexcel セル参照 = matrix( 行列名 ) 指定したセル参照に行列を出力します。
          フォーマットオプションを指定して、
          セルの背景色、罫線、フォントなどを指定できます。 putexcel set "出力結果.xlsx" webuse auto regress mpg price weight matrix r = r(table)' putexcel B3 = matrix(r) , names putexcel save putexcel clear putexcel save Excelファイルを保存して閉じます。 putexcel set "出力結果.xlsx" putexcel describe putexcel save putexcel clear putexcel describe 現在の出力設定を表示します。 putexcel set "出力結果.xlsx" putexcel describe putexcel clear putexcel clear 現在の出力設定をクリアします。 putexcel set "出力結果.xlsx" putexcel describe putexcel clear
        • 作業フォルダに格納されている複数のCSVファイルを読み込んでdtaファイルとして保存し、1つのdtaファイルに結合します。
        • 複数のCSVファイルには同一の列が格納されており、縦方向に結合して1つのファイルにまとめます。
        • インポート、マクロ変数、繰返し処理などのコマンドを使用します。
        • * 作業フォルダを指定します。 cd "ここにCSVファイルが格納されているパスを記述します。" * マクロ変数にファイル名(CSVのみ)を格納します。 local filelist : dir . file "*.csv", respectcase * 繰返し処理でファイルごとに処理を行います。 foreach file of local filelist { * CSVファイルをインポートします。 import delimited "`file'", clear * マクロ変数にファイル名を格納します。 local fname = subinstr("`file'",".csv","",.) * dtaファイルとして保存します。 save "`fname'.dta" * データセットをクリアします。 clear * マクロ変数にファイル名(dtaのみ)を格納します。 local filelist : dir . file "*.dta", respectcase * dtaファイルを縦方向に結合します。 append using `filelist' * dtaファイルを保存します。 save "append_dataset.dta"
        • 2つの回帰モデルを作成し、その結果を比較する表を生成して、Excelファイルに出力します。
        • Stataでは回帰モデルの結果を参照するには保存する操作が必要であり、estimates storeコマンドにより保存できます。
        • こちらの例では2つの回帰モデルですが、3つ以上のモデルも同様の操作で表を作成、出力できます。
        • * サンプルデータを読込みます。 webuse lbw * 回帰モデル(1つ目)を作成します。 regress bwt age lwt * 作成した回帰モデルを保存します。 estimates store model1 * 回帰モデル(2つ目)を作成します。 regress bwt age lwt i.smoke i.ptl * 作成した回帰モデルを保存します。 estimates store model2 * 2つの回帰モデルの表を作成します。 etable, estimates(model1 model2) mstat(N) mstat(r2) column(index) * 表をExcelファイルとしてエクスポートします。 collect export tworegs.xlsx
        • ヘッダー情報が複数行のデータをインポートするコマンド例です。
        • DPCデータ(Excelファイル)は厚生労働省のホームページよりダウンロードできます。
        • すべての列を文字列型で読み込んだあと、変数名と変数ラベルを編集し、特定の変数を数値型に変換します。
        • * はじめに、厚生労働省のホームページより * (8)疾患別手術別集計_MDC01(Excel:2,991KB) * をダウンロードして作業フォルダに格納します。 * 作業フォルダは、cdコマンドを実行すると表示されます。 * Excelファイルを読込みます。 import excel 001076045.xlsx, allstring * 告示番号、通番、施設名の変数名と変数ラベルを設定します。 rename A kokuji rename B tsuban rename C shisetsu label variable kokuji "告示番号" label variable tsuban "通番" label variable shisetsu "施設名" * 変数名の一覧を取得します。 * 変数名と変数ラベルを編集します。 local cnamelist = "`r(varlist)'" local n1 = "" local n2 = "" local n3 = "" local n4 = "" foreach cname of local cnamelist { * 1,2行目の情報を取得します。 if `cname'[1] != "" { local n1 = `cname'[1] local n2 = `cname'[2] * 3行目の情報を取得します。 if `cname'[3] == "件数" { local n3 = "cnt" else if `cname'[3] == "在院日数" { local n3 = "day" * 4行目の情報を取得します。 * 4行目の文字列が3文字以上の場合は変数名の末尾を"xx"とします。 if ustrlen(`cname'[4]) > 2 { local n4 = "xx" else { local n4 = `cname'[4] * 変数名と変数ラベルを設定します。 * 変数名の先頭に数値を使用できないため、先頭に"a"を付与します。 if "`n1'" != "" { local labvar = `cname'[4] label variable `cname' "`n1'_`n2'_`n3'_`labvar'" rename `cname' a`n1'_`n3'_`n4' * 不要な行を削除します。 drop if _n <= 4 * 施設名以外の変数を数値型へ変換します。 destring kokuji tsuban a*, replace force