SPSS備忘録 -44ページ目

SPSS Marketing Executive Seminar Vol.26

SPSS Marketing Executive Seminar Vol.26
Webアクセスログの分析と活用
~ 効果的なWebマーケティング実践のためのスキルと知識 ~
講師:早稲田大学商学部 教授 守口 剛 氏


Vol.24Vol.25 に続きVol.26が行われるとのことです。なんでしょうか、毎月やるようになったのでしょうか?。Vol.26の紹介Webサイトはこちら


日時:2007年10月4日(木) 10:00~17:00 ( + 懇親会とのこと)
会場:SPSSセミナールーム(東京・恵比寿)

受講料:\31,500 (税込)


タイトルどおり、マーケティング目的でSPSSによるデータを分析する人向けのセミナーのようで、PC操作はないとのことです。


今回はWebアクセスログについてのセミナーのようですが、キーワードの傾向やWebサイト訪問者の導線を分析するようです。

SPSS 製品紹介セミナー in 大阪

8月21日に大阪でSPSSの紹介セミナーが行われるそうです。Webページはこちら


ちょうどこのWebページのひとつ上の階層が、東京・恵比寿のオフィス(余談ですが、知人によると今月からセミナールームが新しくなったらしいです)で行われる製品紹介セミナーのページ になっておりますので、おそらくこちらと同等の内容を大阪で行うと思われます。同等だとすると、どういう分野で使われているかやSPSSという会社の説明をして、ソフトが動いているところを見せてくれる会です。


東京同様無料ですので、関西のSPSSの各ソフトを見たことがない人がどんなソフトなのかを知るにはいい機会と思われます。関東の方は東京・恵比寿で定期的に行われているほうにいけばよいでしょう。

多重回答が1変数にまとめて入力されてしまった場合


データ


・・・というようなデータが渡されたとします。値は1変数ごとに分けて入力しなければそれぞれを区別できないって言うのに、そういうことを知らない人が平気でこんな入力をしている場合があります。


しかしこれを分析しなければならないこともありますので、データ加工でなんとかします。アプローチはいくつかあると思うのですが、そのなかの一例として参考にしてください。


SPSSのメニュー[変換]→[変数の計算]で、仮の変数「回答2」を作成します。[型とラベル]ボタンで、文字型変数かつ元の変数「回答」より2文字多い変数にしておいてください。

回答2


「回答2」の文字式は


COMPUTE 回答2 = CONCAT(",",LTRIM(RTRIM(回答)),",")


とします。元の「回答」の余白を削除し、前後に区切り文字(今回は「,」)を入れ込むかたちになります。この理由は後述します。


次に「1」という値が「回答」にあったのかなかったのかを表現する変数「回答_1」を作成します。まずは全ケースが「なかった」場合として「回答_1 = 0」という変数を設定して[貼り付け]をクリックします。


回答_1が0


次に「あった」場合として「回答_1 = 1」を上書き計算させますが、[IF]ボタンをクリックして、条件として「INDEX(回答2,",1,") >= 1」を設定します。仮の変数「回答2」に「,1,」があった場合は、その文字位置を返しますので、1以上の値が返れば「あった」ことになります。


回答_1が1


なぜ「1」ではなく「,1,」なのかは、「1」でヒットさせると「1」だけでなく「10」、「11から19」、「21」、「31」と、「1」ではないけど「1」が入っているためこれらもヒットしてしまうためです。区切り文字を利用して「1」だけ区別してヒットするようにし、そのために区切り文字のない値の前後にも区切り文字を入れたという次第です。


設定後、[貼り付け]をクリックします。ちなみにこの時点で実行するとこのように返されます。


変数「回答2」


[貼り付け]をクリックしますと、「なかった」場合と「あった」場合を合わせて以下のようなシンタックスが生成されます。この処理ではEXECUTEは最後にあれば他は省略できるので、余計なEXECUTEを省略して、「1」の変数を生成するコマンドをコピーして「,1,」と「変数_1」の部分を書き直すことで、他の変数のコマンドを複製します。


シンタックス1


COMPUTE 回答_1 = 0 .
IF (INDEX(回答2,",1,") >= 1) 回答_1 = 1 .


COMPUTE 回答_2 = 0 .
IF (INDEX(回答2,",2,") >= 1) 回答_2 = 1 .


COMPUTE 回答_3 = 0 .
IF (INDEX(回答2,",3,") >= 1) 回答_3 = 1 .


COMPUTE 回答_4 = 0 .
IF (INDEX(回答2,",4,") >= 1) 回答_4 = 1 .


COMPUTE 回答_5 = 0 .
IF (INDEX(回答2,",5,") >= 1) 回答_5 = 1 .


COMPUTE 回答_6 = 0 .
IF (INDEX(回答2,",6,") >= 1) 回答_6 = 1 .


EXECUTE .



回答2のシンタックスをコピー

このシンタックスを実行して多重回答で各値が登場したかどうかを表すフラグ変数を作成できます。


完成