我有一个像这样的 pandas 数据框 ,我想根据 SI.No 合并行。列作为从索引 0 到 3 的行应该合并为一个,这样我应该有一个 SI.No.= 1.0 的单行。相同的规则也应该适用于其他行。数据框的 csv 可以在此链接中找到 csv 文件 |
bfill
形成组并使用自定义 groupby.agg
:
out = (df.groupby(df['Sl.No.'].bfill())
.agg(lambda x: ' '.join(x.dropna().astype(str)))
)
输出:
Sl.No. Institute Course GNDCD GNGND GNPHD OBDCD OBGND OBPHD SCDCD SCGND STGND
Sl.No.
1.0 1.0 Ambedkar Institute of Advanced Communication Technologies and Research, Geeta Colony, Delhi - 110092 Computer Science & Engineering Min Rank - 4494 (06) Max Rank - 4494 (06) Min Rank - 605 Max Rank - 1932 Min Rank - 12119 (06) Max Rank - 12119 (06) Min Rank - 4181 Max Rank - 6326 Min Rank - 8930 Max Rank - 18677 Min Rank - 35295 Max Rank - 35295
2.0 2.0 Ambedkar Institute of Advanced Communication Technologies and Research, Geeta Colony, Delhi - 110092 Electronics & Communication Engineering Min Rank - 9445 (06) Max Rank - 13172 (06) Min Rank - 827 Max Rank - 5048 Min Rank - 16151 (06) Max Rank - 16151 (06) Min Rank - 6663 Max Rank - 9982 Min Rank - 7454 Max Rank - 24487 Min Rank - 36691 Max Rank - 36691
3.0 3.0 Amity School of Engg. & Technology,580, Delhi Palam Vihar Road, Bijwasan, New Delhi - 110061 Computer Science & Engineering Min Rank - 15142 (06) Max Rank - 15500 (06) Min Rank - 4817 Max Rank - 9252 Min Rank - 26348 Max Rank - 47822
4.0 4.0 Amity School of Engg. & Technology,580, Delhi Palam Vihar Road, Bijwasan, New Delhi - 110061 Electronics & Communication Engineering Min Rank - 18580 (06) Max Rank - 18580 (06) Min Rank - 9660 Max Rank - 14606 Min Rank - 47116 Max Rank - 47116
5.0 5.0 Amity School of Engg. & Technology,580, Delhi Palam Vihar Road, Bijwasan, New Delhi - 110061 Information Technology Min Rank - 21212 (06) Max Rank - 21270 (06) Min Rank - 1839 Max Rank - 11643 Min Rank - 43383 Max Rank - 43383
6.0 6.0 Amity School of Engg. & Technology,580, Delhi Palam Vihar Road, Bijwasan, New Delhi - 110061 Instrumentation & Control Engineering Min Rank - 28111 (06) Max Rank - 32219 (06) Min Rank - 16310 Max Rank - 19696
7.0 7.0 Amity School of Engg. & Technology,580, Delhi Palam Vihar Road, Bijwasan, New Delhi - 110061 Mechanical & Automation Engineering Min Rank - 32430 (06) Max Rank - 36622 (06) Min Rank - 8856 Max Rank - 18144 Min Rank - 34155 Max Rank - 34155
8.0 8.0 Bhagwan Parshuram Institute of Technology,P.S.P. - 4, Sector - 17, Rohini, Delhi - 110085 Computer Science & Engineering Min Rank - 9616 (06) Max Rank - 12745 (06) Min Rank - 2442 Max Rank - 5122 Min Rank - 21121 Max Rank - 32876
9.0 9.0 Bhagwan Parshuram Institute of Technology,P.S.P. - 4, Sector - 17, Rohini, Delhi - 110085 Electrical & Electronics Engineering Min Rank - 23332 (06) Max Rank - 24692 (06) Min Rank - 7780 Max Rank - 10716 Min Rank - 10183 Max Rank - 40576
10.0 10.0 Bhagwan Parshuram Institute of Technology,P.S.P. - 4, Sector - 17, Rohini, Delhi - 110085 Electronics & Communication Engineering Min Rank - 12848 (06) Max Rank - 22410 (06) Min Rank - 5997 Max Rank - 8744 Min Rank - 27347 Max Rank - 41077
11.0 11.0 Bhagwan Parshuram Institute of Technology,P.S.P. - 4, Sector - 17, Rohini, Delhi - 110085 Information Technology Min Rank - 11022 (06) Max Rank - 13517 (06) Min Rank - 4399 Max Rank - 6320 Min Rank - 33486 Max Rank - 35583
12.0 12.0 Bharati Vidyapeeth's College of Engineering (2nd Shift), A - 4, Paschim Vihar, New Delhi - 110063 Computer Science & Engineering Min Rank - 8040 (06) Max Rank - 8221 (06) Min Rank - 1404 Max Rank - 2778 Min Rank - 18827 Max Rank - 25405 Min Rank - 26369 Max Rank - 26369
13.0 13.0 Bharati Vidyapeeth's College of Engineering (2nd Shift), A - 4, Paschim Vihar, New Delhi - 110063 Electronics & Communication Engineering Min Rank - 14613 (06) Max Rank - 16313 (06) Min Rank - 4920 Max Rank - 5906 Min Rank - 23625 Max Rank - 36739
14.0 14.0 Bharati Vidyapeeth's College of Engineering (2nd Shift), A - 4, Paschim Vihar, New Delhi - 110063 Information Technology Min Rank - 8557 (06) Max Rank - 9694 (06) Min Rank - 3003 Max Rank - 3755 Min Rank - 26478 Max Rank - 34558