pythoner

python数据处理——Pandas基本使用(二)!

2020-02-15  本文已影响0人  小张Python

pandas 对Series和Dataframe排序算法

Pandas 提供很方便的一个数据类型— DataFrameDataFrame 数据类型转换有两种:

DataFrame数据类型的一个显著特点:把数据以直观的类似于表格形式展现出来,简单明了:

Snipaste_2020-02-14_21-24-44.jpg

处理上面这种数据时通常会用到排序功能,Pandas 也提供了两种很方便的排序函数。

<font size=4 color='green'>1,针对于某一列或多列数据进行排序,利用 sort_values() 函数,该函数只适用于 DataFrame</font>

首先需要构造一个样本:

import numpy as np
#用numpy 来构造一个 DataFrame
df = pd.DataFrame(np.random.randn(5,5),index =np.arange(5),columns=list('abcde'))
df
Snipaste_2020-02-14_22-43-56.jpg

利用sort_values() 函数进行排序

# sort_value 有两个参数
# 第一个 by 指的是排序参照列,可单列也可a多列;
# 第二个 ascending 指的是是否以升序方式,默认维True
# 单列排序
df.sort_values(by = ['a'],ascending = False)
Snipaste_2020-02-14_22-46-58.jpg
# 多列排序;
df.sort_values(by = ['a','b'],ascending =False)
Snipaste_2020-02-14_22-49-07.jpg

<font size=4 color='green'>2,sort_index()函数能够以列为基准,也能以索引(行)为基准,适用数据类型: DataFrame 和 Series</font>

Pandas 读取之后的数据类型就是 DataFrame ,而 Series 指的是 DataFrame 中某一列数据类型 ,sort_index() 具体使用方法如下:

# 利用sort_index(0,ascending = False)对df进行排序;
# 第一个参数,0代表以index维排序基准,1代表以列为基准;
# 以列为基准
df.sort_index(0,ascending = False)
Snipaste_2020-02-14_22-52-12.jpg
# 以列为基准进行排序
df.sort_index(1,ascending =False)
Snipaste_2020-02-14_22-59-16.jpg

利用 sort_index()Series数据类型进行排序

#创建一个Series,以索引为基准排序
df1 =pd.Series([3,6,7,8],index = ['a','c','d','e'])
df1.sort_index()
Snipaste_2020-02-14_22-59-29.jpg

<font size=4 color='green'>3,to_dict()可以直接把数据类型转化为字典,适用数据类型: DataFrame 和 Series;</font>

3.1,to_dict() 应用于 DataFrame

# 把DataFrame数据类型中的两列转化成字典
# 将df中的 以 a列为 key b列为 value 建立字典;
df.set_index('a')['b'].to_dict()
Snipaste_2020-02-14_23-13-37.jpg

3.2,to_dict() 应用于 Series

#创建一个Series,以索引为基准排序
df1 =pd.Series([3,6,7,8],index = ['a','c','d','e'])
# to_dict() 适用于 Series 是以索引为key,以 元素值为 value
df1.to_dict()
Snipaste_2020-02-14_23-15-37.jpg
上一篇下一篇

猜你喜欢

热点阅读