Series和DataFrame的数据排序
前言
知识在于积累,聪明在于学习
系列文章
Python之Pandas(三)
环境:jupyter Notebook(Anaconda)
一、 算术运算与数据对齐
1. 创建数组obj_one
range数据取值范围为10-13,index索引的范围为3,即0-2
obj_one=pd.Series(range(10,13),index=range(3))
obj_one

- 创建数组obj_two
range数据取值范围为20-25,index索引的范围为5,即0-4
obj_two=pd.Series(range(20,25),index=range(5))
obj_two

2. 没有对齐的位置会用NaN进行补齐
obj_one+obj_two

3. 没有对齐的位置直接加上
obj_one.add(obj_two,fill_value=0)

二、Series排序
Series类型由一组数据及与之相关的数据索引组成
1. 创建数组ser_obj
range数据取值范围为10-15,index索引为5,3,1,3,2
import pandas as pd
ser_obj=pd.Series(range(10,15),index=[5,3,1,3,2])
ser_obj

2. 按索引排序
ser_obj.sort_index()

3. 按索引降序
ascending=False按索引降序
ser_obj.sort_index(ascending=False)

三、DataFrame排序
DataFrame可以设置列名columns与行名index
对DataFrame的索引进行排序
1.创建数组df_obj
import numpy as np
import pandas as pd
df_obj=pd.DataFrame(np.arange(9).reshape(3,3),index=[4,3,5])
df_obj

2. 按索引排序
相当于df_obj.sort_index(ascending=True)
df_obj.sort_index()

3. 按索引降序排序
df_obj.sort_index(ascending=False)

4. 按值排序
np.nan为NaN值
ser_obj=pd.Series([4,np.nan,6,np.nan,-3,2])
ser_obj

5. 按values值排序
ser_obj.sort_values()

7.按第2列索引排序
df_obj=pd.DataFrame([[0.4,-0.1,-0.3,0.0],[0.2,0.6,-0.1,-0.7],[0.8,0.6,-0.5,0.1]])
df_obj

df_obj.sort_values(by=2)


|