テキストから抽出したキーワードを年代別に集計する(SPSS Modeler データ加工逆引き11-18)

# テキストから抽出したキーワードを年代別に集計する

![スクリーンショット 2025-03-24 11.41.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/f8d9e7d7-3c7f-4bfa-907c-73880c3fc382.png)

この記事はSPSS Modeler Premium Ver18.6から追加された日本語テキスト機能を利用して書かれています。SPSS Modeler Professionalをお使いの方はアップグレードするかPython連携を用いて実現します。

Python連携を紹介する記事はこちら

https://qiita.com/harrowharrow16/items/248ff8fe3879b63e7ae3

## 1.想定される利用目的

・回答者属性別のキーワード集計
・コンタクトセンターに入電される顧客のステータス別クレームワード集計

## 2.ストリームとデータのダウンロード

ストリーム

https://github.com/yoichiro0903n/blue/raw/refs/heads/main/textlink.str

## 3.サンプルストリームの説明

![スクリーンショット 2025-03-24 11.41.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/c622aa41-694d-407e-9ca0-bfdbc31d5e19.png)

a.入力データは以下の通りです。

![スクリーンショット 2025-03-24 11.46.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/f27c4b5c-8008-4746-bfce-01306ce99983.png)

データはPremium版インストール時に同梱のエクセルファイルを利用しています。入力パスは自動的にマッピングされます。

![スクリーンショット 2025-03-24 11.45.45.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/5b194962-8388-4366-a74d-9f42c5e574a5.png)


b.[置換]ノードを編集します。一度分岐させた情報を後続で結合する際、[id]が整数と文字列で不一致を起こさないように文字列で固定します。

![スクリーンショット 2025-03-24 11.46.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/b0544e1c-46d6-407f-be38-9ab51f8b51ab.png)

c.[テキストリンク分析]ノードを編集します。

![スクリーンショット 2025-03-24 11.47.20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/e30a5aaf-b8c1-4f33-b696-55ebdf4554ce.png)

[テーブル]ノードを実行します。　このノードは切り出されたコンセプト（キーワード）の分レコードが増やします。[id]に属性を結合、集計しやすい形式になっています。

![スクリーンショット 2025-03-24 11.48.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/c3d6326a-ebed-45f8-9f4b-8479567fb06f.png)

d.[フィールド作成]ノードを編集します。年代を毎回ランダムに割り当てます。

![スクリーンショット 2025-03-24 11.48.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/f20d98d9-5f73-49f8-8941-6ec7d61f8800.png)

e.[レコード結合]ノードを編集します。

![スクリーンショット 2025-03-24 11.49.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/6046c06a-5d17-4b33-8512-d179f6391722.png)

f.[レコード集計]ノードを編集します。頻度の多いコンセプトに絞るため集計します。

![スクリーンショット 2025-03-24 11.49.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/56b87f28-89bb-40e7-a19d-7d60a5e64249.png)

g.[レコード結合]ノードを編集します。結果的に不要なノードですが、ストリーム作成時にはここで
テーブル出力しカッとオフする件数を確定します。

![スクリーンショット 2025-03-24 11.49.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/5fb33b5c-f53c-4093-a7f6-5121c3304d93.png)

h.[レコード抽出]ノードを編集します。10以上のコンセプトに絞っています。

![スクリーンショット 2025-03-24 11.49.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/8737bcf4-705f-4a4f-b801-a55b562fffdb.png)

i.[レコード結合]ノードを編集します。

![スクリーンショット 2025-03-24 11.50.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/870e3bf3-2d14-4588-ab3e-23416935cd0a.png)

j.[クロス集計]ノードを編集します。

![スクリーンショット 2025-03-24 13.47.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/daf3a0e4-776f-4de2-9fd1-954c8044961c.png)

実行します。[年代]が毎回ランダムに割り振られるので出力は都度異なります。

![スクリーンショット 2025-03-24 13.47.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/286322/26032fb2-09ac-415d-b2ff-f702289e164d.png)

#### 注意事項

[年代]が毎回ランダムに割り振られるので出力は都度異なります。


## 4.参考情報

#### Python連携によるテキストマイニング

https://qiita.com/harrowharrow16/items/248ff8fe3879b63e7ae3

#### SPSS Modeler ノードリファレンス目次

https://qiita.com/416nishimaki/private/503037195081d3323eee

#### SPSS Modeler 逆引きストリーム集（データ加工）

https://qiita.com/416nishimaki/items/4bf813e6cba84b2a1008