基于我的問題,這里有一種基于 .csv 檔案轉換矩陣的方法
| 日期 | 公司1 | 公司2 | 公司3 |
|---|---|---|---|
| 01.01.2020 | 1.01 | 0.9 | 1 |
| 02.01.2020 | 0.9 | 2.2 | 2 |
| ... | ... | ... | ... |
| 24.10.2020 | 1.02 | 1.01 | 1.03 |
到一個 .csv 檔案的形式
| 日期 | 公司1 | 公司2 | 公司3 |
|---|---|---|---|
| 01.01.2020 | 1 | 3 | 2 |
| 02.01.2020 | 3 | 1 | 2 |
| ... | ... | ... | ... |
| 24.10.2020 | 2 | 3 | 1 |
從而 Companyx 獲得:
- 值 1,如果 companyx 在給定日期 y 的基矩陣中具有最大值
- 值 2,如果 companyx 在給定日期 y 的基矩陣中具有中間值
- 值 3,如果 companyx 在給定日期 y 的基矩陣中具有最小值
uj5u.com熱心網友回復:
您可以使用內置的 rank 函式來解決這個問題,傳遞axis=1來表示按行排序。
df.set_index('Date').rank(axis=1, ascending=False).reset_index()
輸出
Date Company1 Company2 Company3
0 01.01.2020 1.0 3.0 2.0
1 02.01.2020 3.0 1.0 2.0
2 24.10.2020 2.0 3.0 1.0
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/352647.html
上一篇:排序和二分搜索(Java)
下一篇:如何組織具有維度的串列
