Pandas DataFrame如何按照一列数据的特定顺序进行排序

 更新时间:2023年10月27日 09:54:08   作者:凞懿  
这篇文章主要介绍了Pandas DataFrame如何按照一列数据的特定顺序进行排序,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

DataFrame按照一列数据的特定顺序进行排序

原理

先把该列转成category 格式,再弄一个排好序的列表,导入排序即可

dis3 = data3.groupby('distance_group')['case0'].count().reset_index()
list_dis = ['gps incomplete', 'no move', 'in 5 meters', 'in 50 meters','in 500 meters','in 5 km','in 50 km','out 50 km']
dis3['distance_group'] = dis3['distance_group'].astype('category')
dis3['distance_group'].cat.reorder_categories(list_dis, inplace=True)
dis3.sort_values('distance_group',inplace = True)

Pandas库DataFrame的排序 输出特定某列

# -*- coding:utf-8 -*-
 
import tushare as ts
import pandas as pd
 
 
df = pd.read_excel('test.xlsx')
df1 = df.head(10)
 
 
#dataframe按索引升序排列,默认即是升序
print df1.sort_index()
#dataframe按索引降序排列
print df1.sort_index(ascending=False)
 
#第一行按升序排序,默认即是升序
print df1.sort_index(axis=1)
 
#第一行按降序排序
print df1.sort_index(axis=1, ascending=False)
 
#以amount这一列的值进行排序,默认从小到大
print df1.sort_values(by='amount')
 
#以amount这一列的值进行排序,从大到小
#print df1.sort_values(by='amount', ascending=False)

1:取行的操作

house_info.loc[3:6]

类似于python的切片操作

2:取列操作

house_info['price']  

这是读取csv文件时默认的第一行索引

3:取两列

house_info[['price',tradetypename']] 

取多个列也是同理的,注意里面是一个list的列表,不然会报错误;

4:增加列

house_Info['adress_new']=list([.....])  

跟字典的操作有点类似;

5:对某一列除以他的最大值

这样可以得到一个0,1的数值范围,也就是一个简易的归一化操作;

house_info['price']/house_info['price'].max()

6:对列进行排序操作

house_info.sorted_values('price',inplace=True,ascending=True) 

这里的inplace表示再排序的时候是否生成一个新的dataframe 结构,ascending=true表示升序,默认也是升序;

还有一点应该注意的是:对于缺省值,(Nan)排序的时候会把他排在末尾;

7:如何获取缺省值

column_null = pd.isnull(column)
column_is_null_true = column[column_null]

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。                                                                                            

相关文章

  • Python利用Selenium进行网页自动化与动态内容抓取操作

    Python利用Selenium进行网页自动化与动态内容抓取操作

    Selenium是一个自动化测试工具,它允许开发者模拟用户的浏览器行为,执行各种交互操作,下面就跟随小编一起了解下如何使用Python和Selenium进行网页自动化与动态内容抓取吧
    2025-03-03
  • Python探索之修改Python搜索路径

    Python探索之修改Python搜索路径

    这篇文章主要介绍了Python探索之修改Python搜索路径,具有一定参考价值,需要的朋友可以了解下。
    2017-10-10
  • python 算法 排序实现快速排序

    python 算法 排序实现快速排序

    主要分为两个子算法,PARTITION(A, p, r)以A[r]为基准对数组进行一个划分,比A[r]小的放在左边,比A[r]大的放在右边
    2012-06-06
  • Python处理数据之匹配两个Excel文件数据的实现方法

    Python处理数据之匹配两个Excel文件数据的实现方法

    这篇文章主要给大家介绍了关于Python处理数据之匹配两个Excel文件数据的实现方法,可以使用Python的Pandas库来实现两层循环匹配两个Excel文件,需要的朋友可以参考下
    2023-09-09
  • python+pytest接口自动化之日志管理模块loguru简介

    python+pytest接口自动化之日志管理模块loguru简介

    python中有一个用起来非常简便的第三方日志管理模块--loguru,不仅可以避免logging的繁琐配置,而且可以很简单地避免在logging中多进程多线程记录日志时出现的问题,甚至还可以自定义控制台输出的日志颜色,接下来我们来学习怎么使用loguru模块进行日志管理
    2022-05-05
  • PyTorch中Tensor的数据类型和运算的使用

    PyTorch中Tensor的数据类型和运算的使用

    这篇文章主要介绍了PyTorch中Tensor的数据类型和运算的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • python翻译软件实现代码(使用google api完成)

    python翻译软件实现代码(使用google api完成)

    这篇文章主要介绍了python结合google api完成的翻译软件实现代码,大家参考使用
    2013-11-11
  • Python 模拟死锁的常见实例详解

    Python 模拟死锁的常见实例详解

    这篇文章主要为大家介绍了Python 模拟死锁的常见实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • Python利用 SVM 算法实现识别手写数字

    Python利用 SVM 算法实现识别手写数字

    支持向量机 (Support Vector Machine, SVM) 是一种监督学习技术,它通过根据指定的类对训练数据进行最佳分离,从而在高维空间中构建一个或一组超平面。本文将介绍通过SVM算法实现手写数字的识别,需要的可以了解一下
    2021-12-12
  • Python 调用DLL操作抄表机

    Python 调用DLL操作抄表机

    Python 调用DLL的实用代码。
    2009-01-01

最新评论