我有這個矩陣,其中包含 x 個產品和 5 個不同類別的反饋排名。
這個矩陣在 Pandas DataFrame 中表示,如下所示:
| 指數 | 差評 | 評分略差 | 中性評級 | 收視率略高 | 良好的收視率 |
|---|---|---|---|---|---|
| 產品1 | 9 | 0 | 0 | 0 | 0 |
| 產品2 | 0 | 2 | 2 | 2 | 0 |
| 產品3 | 2 | 1 | 3 | 0 | 0 |
| 產品4 | 1 | 1 | 1 | 1 | 1 |
| 產品5 | 0 | 0 | 0 | 4 | 4 |
如何轉換這樣的矩陣以顯示每個產品的總體排名?
例如像這樣,0 是最差的,9 是最好的:
| 指數 | 總體評分 |
|---|---|
| 產品1 | 1 |
| 產品2 | 3 |
| 產品3 | 2 |
| 產品4 | 3 |
| 產品5 | 4 |
uj5u.com熱心網友回復:
像這樣的東西?
df['Bad ratings'] *= -2
df['Slightly bad ratings'] *= -1
df['Good ratings'] *= 2
df.set_index('index').sum(1).rank().sort_values()
輸出:
index
product1 1.0
product3 2.0
product4 3.0
product2 4.0
product5 5.0
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/519662.html
標籤:Python熊猫麻木的
