Lea*_*eko 2 python dataframe python-3.x pandas
我在以特定样式格式化数据框时遇到问题。我想要将与一个相关的数据S/N全部聚集在一起。我对数据集的最终目标是绘制所有S/Ns 的 Dis 与 Rate 的关系图。我已经厌倦了迭代行来切片数据,但这并没有奏效。这种格式化的最佳(最简单)方法是什么?谢谢!
例如:S/N332 在第一行有Dis4.6 和Rate91.2,紧接着我希望它有S/N332、9.19Dis和Rate76.2,依此类推,对于所有有S/N332 的行。
S/N Dis Rate
0 332 4.6030 91.204062
1 445 5.4280 60.233917
2 999 4.6030 91.474156
3 332 9.1985 76.212943
4 445 9.7345 31.902842
5 999 9.1985 76.212943
6 332 14.4405 77.664282
7 445 14.6015 36.261851
8 999 14.4405 77.664282
9 332 20.2005 76.725955
10 445 19.8630 40.705467
11 999 20.2005 76.725955
12 332 25.4780 31.597510
13 445 24.9050 4.897008
14 999 25.4780 31.597510
15 332 30.6670 74.096975
16 445 30.0550 35.217889
17 999 30.6670 74.096975
Run Code Online (Sandbox Code Playgroud)
编辑:尝试按照@Ian Kenney的建议使用排序,但这没有帮助,因为现在值Dis不再按升序排列:
0 332 4.6030 91.204062
15 332 30.6670 74.096975
3 332 9.1985 76.212943
6 332 14.4405 77.664282
9 332 20.2005 76.725955
12 332 25.4780 31.597510
1 445 5.4280 60.233917
4 445 9.7345 31.902842
7 445 14.6015 36.261851
16 445 30.0550 35.217889
10 445 19.8630 40.705467
13 445 24.9050 4.897008
Run Code Online (Sandbox Code Playgroud)
使用sort_values,它可以接受排序目标列表。在这种情况下,听起来您想按S/N, then Dis, then 排序Rate:
df = df.sort_values(['S/N', 'Dis', 'Rate'])
# S/N Dis Rate
# 0 332 4.6030 91.204062
# 3 332 9.1985 76.212943
# 6 332 14.4405 77.664282
# 9 332 20.2005 76.725955
# 12 332 25.4780 31.597510
# 15 332 30.6670 74.096975
# 1 445 5.4280 60.233917
# 4 445 9.7345 31.902842
# 7 445 14.6015 36.261851
# 10 445 19.8630 40.705467
# 13 445 24.9050 4.897008
# 16 445 30.0550 35.217889
# ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1797 次 |
| 最近记录: |