★ SPSSでのダミー変数の作り方 ★

9167. SPSSでのダミー変数の作り方 北海道 2006/01/23 (月) 19:21
└9168. Re: SPSSでのダミー変数の作り方 青木繁伸 2006/01/23 (月) 19:46
 └9170. Re^2: SPSSでのダミー変数の作り方 北海道 2006/01/23 (月) 20:46
  ├9172. Re^3: SPSSでのダミー変数の作り方 青木繁伸 2006/01/23 (月) 21:23
  │└9178. Re^4: SPSSでのダミー変数の作り方 北海道 2006/01/23 (月) 22:07
  │ └9180. Re^5: SPSSでのダミー変数の作り方 青木繁伸 2006/01/23 (月) 22:10
  │  ├9206. Re^6: SPSSでのダミー変数の作り方 北海道 2006/01/24 (火) 21:20
  │  │└9207. Re^7: SPSSでのダミー変数の作り方 青木繁伸 2006/01/24 (火) 21:55
  │  └9204. Re^6: SPSSでのダミー変数の作り方 伊達 2006/01/24 (火) 20:43
  │   └9205. Re^7: SPSSでのダミー変数の作り方 北海道 2006/01/24 (火) 21:15
  └9171. Re^3: SPSSでのダミー変数の作り方 sb 2006/01/23 (月) 21:15
   └9174. Re^4: SPSSでのダミー変数の作り方 伊達 2006/01/23 (月) 21:32
    └9177. Re^5: SPSSでのダミー変数の作り方 北海道 2006/01/23 (月) 22:02
     └9179. Re^6: SPSSでのダミー変数の作り方 青木繁伸 2006/01/23 (月) 22:07


9167. SPSSでのダミー変数の作り方 北海道  2006/01/23 (月) 19:21
SPSSでのダミー変数の作り方を教えて下さい
ABCDと有ったとき
A=1 B・C・D=0 ダミー1
B=1 A・C・D=0 ダミー2
C=1 B・D・A=0 ダミー3
D=1 B・C・A=0 ダミー4
としていたのですが,以下の方が正しいのかと思い直しました。

A=1 B=0 ダミー1
A=1 C=0 ダミー2
A-1 D=0 ダミー3

いかがですか

     [このページのトップへ]


9168. Re: SPSSでのダミー変数の作り方 青木繁伸  2006/01/23 (月) 19:46
どうも,質問に書かれていることがはっきりしないので,あっているのか間違っているのかも判断できません。。。


A, B,C,Dの4つのカテゴリーを持つアイテム変数(数量化理論での用語ですが。。。)をダミー変数で表すときにどうしたらよいかということにお答えしてお きます(それを特定のプログラミング言語でどう表すかは別問題だし,結果があっていればそのプログラミングでよいのだし,,ということで)

カテゴリーが4つの場合,3つのダミー変数が必要です
以下は,カテゴリーA を基準とした場合

カテゴリーの値を,(ダミー変数1,ダミー変数2,ダミー変数3)で示すと,

A の場合 (0, 0, 0)
B の場合 (1, 0, 0)
C の場合 (0, 1, 0)
D の場合 (0, 0, 1)

みたいになるわけです。

質問の意図が違う??

SPSS だと,computeif とかを使うんでしたっけ??忘れた。

     [このページのトップへ]


9170. Re^2: SPSSでのダミー変数の作り方 北海道  2006/01/23 (月) 20:46
早速のお返事ありがとうございました。
ダミー変数の理屈は解っていて私は本来SASを使っているので
SASは先生がお示しの通りにプログラムを書くのですが,SASはリースなのでそろそろSPSSに替えようと挑んでいますが,SPSSでの実際の分析方法を知りたいと思いました。
変換→値の際割り当て→他の変数へ・・・のたとどうしたらよいのか??
以前SPSSでは自動でダミー変数をつくってくれるというスレッドが有った気がしてさがしてみたのですが解りませんでした。どうぞ宜しくお願い致します。
> どうも,質問に書かれていることがはっきりしないので,あっているのか間違っているのかも判断できません。。。
>
>
> A,B,C,Dの4つのカテゴリーを持つアイテム変数(数量化理論での用語ですが。。。)をダミー変数で表すときにどうしたらよいかということにお答えし ておきます(それを特定のプログラミング言語でどう表すかは別問題だし,結果があっていればそのプログラミングでよいのだし,,ということで)
>
> カテゴリーが4つの場合,3つのダミー変数が必要です
> 以下は,カテゴリーA を基準とした場合
>
> カテゴリーの値を,(ダミー変数1,ダミー変数2,ダミー変数3)で示すと,
>
> A の場合 (0, 0, 0)
> B の場合 (1, 0, 0)
> C の場合 (0, 1, 0)
> D の場合 (0, 0, 1)
>
> みたいになるわけです。
>
> 質問の意図が違う??
>
> SPSS だと,computeif とかを使うんでしたっけ??忘れた。

     [このページのトップへ]


9172. Re^3: SPSSでのダミー変数の作り方 青木繁伸  2006/01/23 (月) 21:23
> SPSSでの実際の分析方法を知りたいと思いました。

なあんだ。。そいういうこと?

if(x .eq. "A") d1 = 0
if(x .eq. "A") d2 = 0
if(x .eq. "A") d3 = 0

if(x .eq. "B") d1 = 1
if(x .eq. "B") d2 = 0
if(x .eq. "B") d3 = 0

あと6行。。。みたいに書くかなぁ

あまり生産的ではなかったような

SAS は1年リース契約,SPSS だってパッケージは安くない。。。のではなかったかなぁ

こんなことをするときはどうしたらいいの?
こんなことはできるの?
というような,リストを販売会社に出して,見積もりすればよろしいかと。

SPSS もいろいろなパッケージを用意するとけっこうな総額になると思いますよ。

     [このページのトップへ]


9178. Re^4: SPSSでのダミー変数の作り方 北海道  2006/01/23 (月) 22:07
青木先生

ありがとうございました。

変換→値の際割り当て→他の変数へ→if の空欄に下記を記入すればいいのでしょうか?
その際 "A"は 変数でしょうか? 変数名のカテゴリーですか?
宜しくお願いします。
(先ほどは全文を引用して申し訳ありませんでした)


>
> if(x .eq. "A") d1 = 0
> if(x .eq. "A") d2 = 0
> if(x .eq. "A") d3 = 0

     [このページのトップへ]


9180. Re^5: SPSSでのダミー変数の作り方 青木繁伸  2006/01/23 (月) 22:10
どなたか,SPSS をご存じの方のフォローを待ちましょう。
私にはわかりません。

SPSS のサポートセンターなりに,「購入を検討しているのだが,こういうことはできるのか?」ということで,お問い合わせになるのが一番かと思います。

     [このページのトップへ]


9206. Re^6: SPSSでのダミー変数の作り方 北海道  2006/01/24 (火) 21:20
青木先生

お返事ありがとうございます。
SPSSのマニュアルをよく読んでも
あまり解りませんでしたが・・・
元データを変換してダミー変数を作るようです。
例えば元データーで1のものを1としてそれ以外を0にする
元データが2のものを1にしてそれ以外を0にする
元データで3のものを1にしてそれ以外を0にするとして
3つの新しいデータで変数を3つ作成するようです。
有ってるかどうかちょっと疑問ですがこれでやってみます。

     [このページのトップへ]


9207. Re^7: SPSSでのダミー変数の作り方 青木繁伸  2006/01/24 (火) 21:55
> 元データを変換してダミー変数を作るようです。
> 例えば元データーで1のものを1としてそれ以外を0にする
> 元データが2のものを1にしてそれ以外を0にする
> 元データで3のものを1にしてそれ以外を0にするとして
> 3つの新しいデータで変数を3つ作成するようです

結果は一つしかないので,それをどのように表現・実現するかがそれぞれのパッケージ・プログラムによって違うと言うだけです。

SPSS は,要するに
1) カテゴリーの個数(k)マイナス1個のダミー変数をる
2) 初期値は 0 としておく
3) 元の変数xの値がiならi-1番目のダミー変数を1にする
ということをやっているのかな。

R だと,

> x
[1] 1 2 3 1 2 3 2 2 1
> t(sapply(x, function(i) {d <- numeric(3); d[i] <- 1; d})[-1,])
[,1] [,2]
[1,] 0 0
[2,] 1 0
[3,] 0 1
[4,] 0 0
[5,] 1 0
[6,] 0 1
[7,] 1 0
[8,] 1 0
[9,] 0 0

みたいになる。これを簡単とみるか,呪文とみるか。

結局,どういう手順でやろうと結果は同じものになる。
ならないわけがない。
それをややこしい手続きで書かなくてはならないか簡単に書けるかはことなるだろうということ。

     [このページのトップへ]


9204. Re^6: SPSSでのダミー変数の作り方 伊達  2006/01/24 (火) 20:43
> SPSS のサポートセンターなりに,「購入を検討しているのだが,こういうことはできるのか?」ということで,お問い合わせになるのが一番かと思います。

以前に僕がSPSSに興味示したら,飛びついてきて「ご購入の件,いかがですか?」って電話掛かってきました。SPSSはここ最近年に1度はバージョンアップしますよ。もちろんバージョンアップしなくても使えますが・・・。

僕の前回のレスは的外れだったようです。「変換→値の際割り当て→他の変数へ→if の空欄...」のやり方はわからないのですが,シンタックスを使うなら
http://www.spss.co.jp/support/spss_faq/syn/syn01.html

http://www.spss.co.jp/support/spss_faq/syn/syn21.html
では解決されないのでしょうか。

     [このページのトップへ]


9205. Re^7: SPSSでのダミー変数の作り方 北海道  2006/01/24 (火) 21:15
伊達さん

お返事ありがとうございました。
元データを変換するようです。

     [このページのトップへ]


9171. Re^3: SPSSでのダミー変数の作り方 sb  2006/01/23 (月) 21:15
> SASはリースなのでそろそろSPSSに替えようと挑んでいます

Rに乗り換えるいい機会です。

     [このページのトップへ]


9174. Re^4: SPSSでのダミー変数の作り方 伊達  2006/01/23 (月) 21:32
> 以前SPSSでは自動でダミー変数をつくってくれるというスレッドが有った気がしてさがしてみたのですが解りませんでした。

そのスレッドは僕も確認していませんが,
GUIで(例えばロジスティック回帰分析)デフォルトでは連続変数として認識されるのですが,変数を選択し適当に設定すること(かなり曖昧な表現ですが…)により,ダミー変数として認識させます。それを“シンタックス”として吐き出させれば,プログラムもわかります。

     [このページのトップへ]


9177. Re^5: SPSSでのダミー変数の作り方 北海道  2006/01/23 (月) 22:02
お返事ありがとうございます
ダミー変数として認識させる具体的方法が解ると良いのですが??

> GUIで(例えばロジスティック回帰分析)デフォルトでは連続変数として認識されるのですが,変数を選択し適当に設定すること(かなり曖昧な表現です が…)により,ダミー変数として認識させます。それを“シンタックス”として吐き出させれば,プログラムもわかります。

     [このページのトップへ]


9179. Re^6: SPSSでのダミー変数の作り方 青木繁伸  2006/01/23 (月) 22:07
R だと,x という変数が 1,2,1,3,2,1,2,2,1
なんて値を取るけど,それは間隔尺度じゃなくて名義尺度(要因)だよということを示すなら,
x <- as.factor(c(1,2,1,3,2,1,2,2,1))
とやって,factor として扱ってねというわけです。

SPSS ではどうやるんでしょうね。

# 全文引用はしないでね

     [このページのトップへ]


● 「統計学関連なんでもあり」の過去ログ--- 036 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る