這個問題在這里已經有了答案: 帶有分隔符的 Pandas groupby 連接 3 個答案 48 分鐘前關閉。
我將 csv 檔案讀取到資料框,如下所示:
| ID | 學生代碼 | 姓名 | 出生 |
|---|---|---|---|
| ABC001 | S-01 | 約翰 | 2000 年 3 月 10 日 |
| ABC002 | S-01 | 約翰 | 2000 年 3 月 10 日 |
| ABC003 | S-01 | 約翰 | 2000 年 3 月 10 日 |
| ABC004 | S-02 | 標記 | 2001 年 12 月 8 日 |
| ABC005 | S-02 | 標記 | 2001 年 12 月 8 日 |
| ABC006 | S-03 | 恩斯特 | 2005 年 1 月 10 日 |
| ... | ... | ... | ... |
我試圖轉換為其他資料框,例如:
| 學生代碼 | 姓名 | 出生 | ID |
|---|---|---|---|
| S-01 | 約翰 | 2000 年 3 月 10 日 | ABC001; ABC002; ABC003 |
| S-02 | 標記 | 2001 年 12 月 8 日 | ABC004; ABC005 |
| S-03 | 恩斯特 | 2005 年 1 月 10 日 | ABC006 |
| ... | ... | ... | ... |
Python中是否有可以像上面那樣轉換的帶有資料框的方法?
謝謝,
uj5u.com熱心網友回復:
你檢查過groupby功能嗎?
uj5u.com熱心網友回復:
import io
temp = io.StringIO("""ID,StudentCode,Name,Birth
0,Abc001,S-01,John,03/10/2000
1,Abc002,S-01,John,03/10/2000
2,Abc003,S-01,John,03/10/2000
3,Abc004,S-02,Mark,12/08/2001
4,Abc005,S-02,Mark,12/08/2001
5,Abc006,S-03,Ernst,01/10/2005""")
df = pd.read_csv(temp, sep=",")
df.groupby(["StudentCode","Name","Birth","ID"]).mean()
StudentCode Name Birth ID
S-01 John 03/10/2000 Abc001
Abc002
Abc003
S-02 Mark 12/08/2001 Abc004
Abc005
S-03 Ernst 01/10/2005 Abc006
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/443998.html
