pandas - 对 Pandas DF 单列排序未排序
问题描述
我开始的 df (ao_dlyav) 看起来像这样:
print(ao_dlyav)
Month Day
2 1 -0.423085
10 -0.285268
11 -0.311803
12 -0.401521
13 -0.587606
14 -0.666183
15 -0.541296
16 -0.375310
17 -0.348704
18 -0.304028
19 -0.187099
2 -0.304127
... ...
6 -0.606225
7 -0.448099
8 -0.290676
9 -0.254901
我重置了索引,如下所示:
Month Day Index
0 2 1 -0.423085
1 2 10 -0.285268
2 2 11 -0.311803
3 2 12 -0.401521
4 2 13 -0.587606
5 2 14 -0.666183
6 2 15 -0.541296
7 2 16 -0.375310
8 2 17 -0.348704
9 2 18 -0.304028
10 2 19 -0.187099
11 2 2 -0.304127
12 2 20 -0.111563
13 2 21 -0.078732
14 2 22 -0.083873
15 2 23 -0.140437
16 2 24 -0.185606
17 2 25 -0.213042
18 2 26 -0.235634
19 2 27 -0.217211
20 2 28 -0.122296
21 2 29 -0.101111
22 2 3 -0.323254
23 2 4 -0.447901
24 2 5 -0.582465
25 2 6 -0.606225
26 2 7 -0.448099
27 2 8 -0.290676
28 2 9 -0.254901
这是我正在使用的代码,它给了我上面显示的结果,没有按“天”列排序,并且都给出了上面相同的结果。
ao_dlyav = ao_dlyav.sort_values(by = ['Day'],ascending=True)
ao_dlyav = ao_dlyav.sort_values('Day',ascending=True)
谢谢你,我还在学习 Python。
解决方案
您的Day
专栏似乎是 astr
而不是int
. 您可以通过这样做来验证这一点
ao_dlyav.Day.dtype
所以你应该先把它转换成数字:
ao_dlyav['Day'] = ao_dlyav['Day'].astype(int)
ao_dlyav.sort_values('Day', inplace = True)
推荐阅读
- c# - 如何在 ProgressRing 中设置为 true
- java - 将数据添加到“价格”和“数量”列单元格时更新 JTable 中的“金额”列单元格
- opengl - 使用 for 循环绘制球体
- java - 将 DATETIME 从 SQLite 解析为 java.SQL.Timestamp 时出错
- android - 当我离开我的应用程序时如何停止 MediaPlayer,但当我移动到另一个 Activity (Android Studio) 时不能
- python - 使用范围遍历列表
- ios - 带参数的本地化字符串在参数周围添加换行符和括号
- asp.net-core - 通过 aspnet 核心中的代码触发 HealthCheck
- django - 从Django中的数据库中填充外键字段的输入字段
- php - 为我在 PHP 中的登录添加另一个“角色”