ある変数の最小値・最大値を表示せよ、変数を新規作成せよ
Stataでデータ分析を行う際、変数の最大値や最小値を確認し、それらを新しい変数に格納することは重要なスキルです。本記事では、`sysuse auto`データセットを使用して、最大値・最小値の表示方法と新しい変数への格納方法を詳しく説明します。
1. 最大値・最小値を表示する
基本的な方法:summarizeコマンド
sysuse auto, clear
summarize price
このコマンドは、`price`変数の基本統計量(平均、標準偏差、最小値、最大値など)を表示します。
詳細情報の取得:return list
`summarize`コマンド実行後、`return list`を使用すると、より詳細な統計情報を確認できます。
summarize price
return list
これにより、`r(max)`, `r(min)`などの値が表示されます。
特定の統計量の表示
最大値や最小値のみを表示したい場合は、以下のように`display`コマンドを使用できます。
summarize price
display "最大価格: USD " r(max)
display "最小価格: USD " r(min)
2. 新しい変数に最大値・最小値を格納する
egenコマンドの使用
egen max_price = max(price)
egen min_price = min(price)
生成した変数の確認
list price max_price min_price in 1/5
3. 複数の変数の最大値・最小値を扱う
複数変数の最大値を一つの変数に格納
egen max_all = rowmax(price mpg weight)
複数変数の最小値を一つの変数に格納
egen min_all = rowmin(price mpg weight)
4. 条件付きの最大値・最小値
特定の条件下での最大値や最小値を求めることもできます。
egen max_domestic = max(price) if foreign == 0
egen min_foreign = min(price) if foreign == 1
演習問題
`mpg`変数の最大値と最小値を表示し、それぞれを新しい変数に格納しなさい。
外国車(`foreign == 1`)の中で、最も高価な車の価格を表示しなさい。
`weight`と`length`の両方について、それぞれの最大値を新しい変数に格納し、どちらの変数がより大きな最大値を持つか比較しなさい。
解答例
* 問題1
summarize mpg
display "最大燃費: " r(max) " mpg"
display "最小燃費: " r(min) " mpg"
egen max_mpg = max(mpg)
egen min_mpg = min(mpg)
* 問題2
summarize price if foreign == 1
display "最も高価な外国車: $" r(max)
* 問題3
egen max_weight = max(weight)
egen max_length = max(length)
display "重量の最大値: " max_weight
display "長さの最大値: " max_length
display "最大値が大きいのは: " cond(max_weight > max_length, "重量", "長さ")
まとめ
Stataで最大値や最小値を扱う方法は多岐にわたります。`summarize`コマンド、`return list`、`egen`コマンドなどを組み合わせることで、データの特性を効率的に把握し、分析を進めることができます。これらの技術を習得し、実際のデータ分析に応用することで、より深い洞察を得ることができるでしょう。