python - 在间隔列上对 DataFrame 进行排序
问题描述
我的输出如下所示:
binnedb Proba-A Proba-B Esperance-A Esperance-B
0 (0.0101, 0.0202] 0.547826 0.539130 0.007817 0.007693
1 (0.0302, 0.0402] 0.547826 0.539130 0.005963 0.005854
2 (0.0201, 0.0302] 0.547826 0.539130 0.008360 0.008227
我想做的是根据 binnedb 列按升序对 df 进行排序(这也将按升序排序)。如果您不明白这个问题,请告诉我。这就是我到目前为止所尝试的:df.sort_values(by=['binnedb'], ascending = False)
但它不起作用......谢谢!
解决方案
由于它是inverval
列类型,您可以使用它left
来获取左侧范围并根据它进行排序。
df['sortkey']=df.binnedb.map(lambda x : x.left)
df=df.sort_values('sortkey')
推荐阅读
- c# - 什么是日期的 c# AVRO 模式
- c# - 设置位图文件位置
- android - 切换项总是返回 null
- drake - 通过镜像内部函数 CalcNormalAndTangentContactJacobians() 找到 Contact Jacobian
- php - 只在一个页面上安装 Wordpress?
- python - 向运行 Python 装饰器的模块添加属性
- java - java中的赋值运算符和addAll有什么区别?
- animation - 视图的隐藏过渡与显示过渡不同
- hadoop - 如何连接到hbase?
- java - Android ExoPlayer 已弃用,无法流式传输视频