mcpField
R
review-salience-xlsx

review-salience-xlsx

github.com/timlai666Data & databases074 installsUpdated 2d ago
Repository

About review-salience-xlsx

A skill for measuring attribute salience in product reviews and producing score matrices, PCA, or K-means results. It preserves original review data and distinguishes mention intensity from satisfaction.

Key features

  1. 01Score each attribute from 0–7 using a fixed catalog
  2. 02Build review-by-attribute matrices and product averages
  3. 03Run PCA on attribute matrices
  4. 04Cluster reviews with K-means on component coordinates
  5. 05Check data integrity and analysis limits

Use cases

  1. 01Compare attribute attention across product reviews
  2. 02Find attributes that tend to be mentioned together
  3. 03Group reviews by attribute mention patterns

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/timlai666/skills --skill review-salience-xlsx

After installing, type/review-salience-xlsxin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
external-scorer.md
pca-kmeans.md
worked-example.md
xlsx-format.md
scripts/
salience_analysis.py
scoring_io.py
test_salience_analysis.py
test_scoring_io.py

Details

From the project README

Review Salience → PCA → K-means

Overview

把每篇評論對各項屬性的提及程度評為 0–7 分,依需求交付 Excel 矩陣、PCA 主成分分析或 K-means 分群。PCA 用來整理常一起被提及的屬性,分群則依這些提及模式整理評論。

三個階段可分別執行。只要評分就完成評分,只要分析既有矩陣就先檢查矩陣,不重做已完成的階段。

Input Contract

確認本次需要評分、Excel、PCA、分群中的哪些成果,並取得對應資料:

  • 評分:各產品的完整評論,以及有順序的屬性目錄。
  • PCA:已檢查的評論 × 屬性分數矩陣。
  • 分群:PCA 產生的每篇評論座標,及可對照的評論識別資料。解讀群體時另需原始評分矩陣。

屬性目錄使用固定的 id 與 label,例如 01、耐用度。沒有目錄時先閱讀評論整理項目,評分開始後不增刪或重排。

每列保留 review_id、product、完整 review_text,評分欄依目錄排列為 s01、s02 等。沒有既有識別碼時,可按產品及原始順序建立穩定編號。每篇評論是一筆分析單位,不預設每篇都來自不同顧客。

Data Sufficiency Gate

  • 保留所有非空白評論,不因字數少或語言不同而排除。空白列另計數,無法解讀的內容應標示待確認,不用 0 分代替評分失敗。
  • 分數必須是 0–7 的整數,每篇的分數數量及順序都要與目錄一致。小數、布林值、缺值或缺列必須處理完才能進入統計。
  • PCA 沒有足夠樣本或可變動的屬性時,保留評分成果並說明不能分析的原因。
  • 無法形成符合條件的多個群體時,回報未形成有效分群。保留每篇的結果,不把強制停止寫成成功分群。

Workflow

1. 匯入完整評論

列出各產品的原始、空白及保留篇數,保留評論原文和來源順序。CSV 可使用 scoring_io.py 的 load_reviews。檔案格式或文字欄不明確時,先確認實際欄位,避免讀錯內容。

2. 固定目錄,逐篇評分

依完整語意判讀每個屬性,不以關鍵字出現次數代替閱讀。正面、負面或中立的內容都可能被明確提及。

分數提及程度
0完全沒有提到
1–3略微或間接提到
4清楚提到,但著墨有限
5–6明確討論
7是評論的主要關注點,或有充分強調

假設評論寫「拉鍊非常好拉」或「拉鍊完全拉不動」,兩者都可能高度提及拉鍊。分數衡量的是提及程度,不能據此判定滿意或不滿意。

評分器的輸入是評論原文與固定屬性目錄,輸出是依目錄順序排列的整數串列。可由目前的 agent 閱讀評分,或使用外部評分器,兩者遵守相同檢查。批次工作分段保存進度,重跑時依識別碼確認已完成哪些評論。

外部 API 或 CSV 交接時,讀外部評分器。需要校準判讀時,讀評分與分析案例,只參考有原文支持的判讀,不把案例群數當成本次答案。

3. 交付需要的矩陣

需要 .xlsx 時才載入當前可用的試算表技能,並依 Excel 格式建立「評論 × 屬性」及「產品平均提及程度」兩張工作表。

產品平均包含該產品所有已評分評論,沒有提到的 0 分也計入。平均值描述整批評論的提及程度,不是品質分數。

4. PCA(需要時)

依 PCA 與 K-means使用 salience_analysis.py。先標準化可分析的屬性,再以特徵值大於 1 作為主成分保留依據。記錄排除的固定值屬性、保留數、解釋變異及限制。

主成分依正負負荷量所對應的屬性命名。其正負號不能當成好壞評價。保存每篇評論的主成分座標,供需要的分群階段使用。

5. K-means(需要時)

以主成分座標分群,在樣本數與不同座標數允許的範圍內比較群數。依統計指標及可解釋性選擇起始群數,記錄理由。

沿用小群低於全樣本 5% 時的逐次排除與重訓流程。完成後用最終模型重新指派全部評論,檢查最終群體大小,每篇都要有對應結果。只剩一群時,明確回報無法形成多群。

以主成分位置、原始屬性平均及產品分布描述各群「談論什麼」。要談滿意度、購買動機或人物特徵,必須另有原文或資料支持。

Output Contract

只交付本次要求的階段成果:

  • 評分:完整原文、識別碼、固定目錄、逐篇分數及產品篇數。
  • Excel:完整矩陣與產品平均,欄位順序與評分資料一致。
  • PCA:主成分數、負荷量、解釋變異、每篇座標及未能分析的原因。
  • 分群:每篇歸屬、群體大小、各群提及模式、重訓紀錄及完成狀態。

使用當前環境的檔案連結或交付工具提供成果。只有檔案含公式時才需要重算與檢查公式結果。需要 Word 時再載入文件技能,不為單純評分或統計額外產生 Word。

Quality Rules

  • 原文與評分分開保存,不能為了版面截斷唯一的原始資料。
  • 所有語言使用相同評分定義。短評論可以有高分,長評論也可能沒提到某個屬性。
  • 全部評論的順序與識別碼在評分、PCA、分群間保持一致,沒有遺失、重複或錯配。
  • 統計結果只能支持提及模式的描述,不能把高分、高主成分座標或特定群體當成高滿意度。
  • 確認完成狀態、實際分析篇數與最終群體大小,不以程式正常結束代替驗收。

Comments

Markdown supported