pandas数据筛选与排序sort_index,sort_values

第一步数据标记

标记数据非常简单, 直接获取数据然后进行判断即可

bools = df['value'] > 100

第二步 筛选数据

使用标记筛选数据

df_new = df[bools]

这是 只有一个筛选条件的情况下, 如果有多个条件就可以使用逻辑运算符

在我们的需求中,需要的数据是同时满足两个条件,所以我们使用逻辑与运算连接两个值,最后获取同时满足两个条件的值
先设定多个筛选条件

bools01 = df['value1'] > 300
bools02 = df['value2'] > 100
在获取数据的时候, 因为有多个条件, 所以需要使用逻辑运算符进行运算
如果 想要筛选出两个条件都成立的情况 就可使用&
df_new2 = df[bools01 & bools02]

补充筛选方法

  • series.str 会将每一个数据转换成字符串
  • contains() 判断字符串是否含有指定子串,返回的是bool类型
import pandas as pd

dict={
    'R': ['A78', 'A94', 'A6L', 'A88'],
    'B': ['B40', 'B51', 'B82', 'B32'],
    'C': ['C90', 'C41', 'C26', 'C23']}
df=pd.DataFrame(dict1)
df.head()

bools = df['R'].str.contains("L")
new_df = df[bools]

sort_index()、sort_values(),在排序的时候我们要特别注意,这个方法是直接对我们的数据进行了排序,并不会生成一个新的数据,所以排序操作我们不需要将它赋值给新的变量

sort_index()

sort_index() 方法是按照行索引进行排序, 所以读取出来的数据就一定要有行索引,
可以在读取数据的时候指定一个行索引


df = pd.read_excel('../data/rate.xlsx',index_col='Country Code')
示例
import pandas as pd

dict1={
    'R': ['A78', 'A94', 'A6L', 'A88'],
    'B': ['B40', 'B51', 'B82', 'B32'],
    'C': ['C90', 'C41', 'C26', 'C23']}
df1=pd.DataFrame(dict1, index=['V8', 'V1', 'V9', 'V6'])
df1.head()

df1.sort_index(ascending=False, inplace=True)
df1.head()
  • inplace=True参数是针对在对读取的文件的时候, 用来控制是否直接对原始数据进行修改
  • ascending可以控制排序的顺序, 默认值为True从小到大排序, 当它被设置为False的时候就可以使用倒序排序

sort_values()

sort_values() 可以指定具体列进行排序, 它比sort_index()方法多了一个参数 by

  • by : 决定了是按数据中哪一列进行排序, 将需要按照某列排序的列名赋值个by即可
  • inplace=True 用来控制是否直接对原始数据进行修改
  • ascending可以控制排序的顺序, 默认值为True从小到大排序, 当它被设置为False的时候就可以使用倒序排序
  • 好像重复了, 算了就当凑字符啦
df.sort_values(by='value', ascending=False, inplace=True)

也可根据多列进行排序, 只需在by后面换成一个列表, 列表中的元素就是排序指定的列

df.sort_values(by=['value1','value2'], ascending=False, inplace=True)

这两种排序, 我感觉不都是按照列就行排序的吗, 一个是指定的列, 一个按照索引(索引不也是一列?), 使用起来还是 仁者见仁智者见智把

Original: https://blog.csdn.net/lxb_wyf/article/details/114198726
Author: 蓝小白1024
Title: pandas数据筛选与排序sort_index,sort_values

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/752585/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球