---
title: #70 Section 25 クラスタリング（６）予測
tags: 
author: [猫のタロー](https://convert.docswell.com/user/Cat_Taro)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/YJ9PYMVR73.jpg?width=480
description: 1. predict_modelによる予測 predict_model関数は、学習済みモデルを未知のデータに適用し、クラスターラベルを付与するために使用します。本来は新規データ用ですが、ここでは既存データを用いて動作を確認しています。  2. assign_modelとの比較 predict_modelの結果（kmeans_pred）と、以前にassign_modelでラベル付与した結果（kmeans_cluster）が同一か、equalsメソッドで検証しました。結果はFalseとなり、完全一致はしませんでした。  3. 不一致の原因特定 compareメソッドで詳細を確認すると、特定の数値列（Savingsなど）に微小な差が見られました。これは、assign_modelがPyCaretの内部で前処理（Setup）が適用された後のデータを保持しているのに対し、predict_modelは元の生データにモデルを適用したためです。  ただし、最終的な「クラスターラベル」自体には差がなく、モデルの予測結果としての妥当性は保たれていることが確認できました。
published: March 03, 26
canonical: https://convert.docswell.com/s/Cat_Taro/5PR894-2026-03-03-130422
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/YJ9PYMVR73.jpg)

4th STEP 機械学習
Section 25
クラスタリング（６）
予 測
Setup
Create Model
Assign Model
Analyze Model
データサイエンス チュートリアル
Prediction
Save Model
1


# Page. 2

![Page Image](https://bcdn.docswell.com/page/GJ8D6LPGJD.jpg)

4th STEP 機械学習 Section 25 クラスタリング（６）予測
predict_model関数
『Prediction』の最初のコードは、predict_model関数を使った予
測になります。
predict_model(モデル名, data=データ名)
predict_model関数は、本来は未知のデータを予測するためのもの
ですが、ここでは未知のデータの用意が無いので、モデル作成時に使っ
たデータを引数で指定しています。
本来は、新たなデータに作成したモデルを適用させたい場合に、
predict_model関数を使います。
結果は、assign_model関数で付与されたクラスターラベルと同じも
のが付与されています。
データサイエンス チュートリアル
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/LJLM9L1XER.jpg)

4th STEP 機械学習 Section 25 クラスタリング（６）予測
【参考】 データの確認(1)
今回予想した『kmeans_pred』と、 assign_model関数でクラスターラベルを付与した『kmeans_cluster』は、同じデー
タであるはずです。これを確認してみましょう。
2つのDataFrameが同じものであるかどうかを判定するには、
『応用編 Webスクレイピング／#44 Supplement ２ DataFrameの比較』で体験した「equals」を使います。
https://tutorial4datascience.blogspot.com/2025/03/supplement-dataframe.html
96 データ1.equals(データ2)
を使って確かめてみましょう。
結果は、『False』でした。どこかが、不一致のようです・・・。
データサイエンス チュートリアル
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/47MYZMW37W.jpg)

4th STEP 機械学習 Section 25 クラスタリング（６）予測
【参考】 データの確認(2)
値の違うindexと列を特定するには、「compare」を使います。
https://tutorial4datascience.blogspot.com/2025/03/supplement-dataframe.html
97 データ1.compare(データ2)
を使って確かめてみましょう。
列『SpendingScore』と列『Savings』の数値が表示され
ています。
『self』はデータ1にあたる『kmeans_pred』、『other』は
データ2にあたる『kmeans_cluster』の値です。
よく見ると、列『Savings』の数値が微妙に違っています。
『kmeans_cluster』は、setup関数でデータの前処理を行って
からクラスターラベルを付与したデータにモデルを適用したものです
が、『kmeans_pred』は呼び出した直後のデータにモデルを適用
したものだからです。
しかし、クラスタラベルには差はありませんでした。 デ ー タ サ イ エ ン ス チ ュ ー ト リ ア ル
4


