【利用Python进行数据分析7】Pandas入门(排序和排名,带有重复标签的索引值)

5.2.6排序和排名

import pandas as pd
import numpy as np

obj=pd.Series(np.arange(4),index=["d","a","b","c"])
print(obj.sort_index())#sort_index对标签进行重排
obj2=pd.DataFrame(np.arange(8).reshape(2,4),index=["three","one"],columns=["d","a","b","c"])
print(obj2.sort_index())#默认对index进行重排
print(obj2.sort_index(axis="columns"))#指定轴为columns
print(obj2.sort_index(axis="columns",ascending=False))#默认升序,可降序
obj3=pd.Series([4,7,np.nan,-3,2])
print(obj3.sort_values())#sort_values对值进行重排,np.nan一律在末尾
print(obj3.sort_values(na_position="first"))#把np.nan排到最前面

frame=pd.DataFrame({"b":[4,7,-3,2],"a":[0,1,0,1]})
print(frame.sort_values("b"))#单独对b排列

obj4=pd.Series([7,-5,7,4,2,0,4])
print(obj4.rank())#从小到大排,相同的数用平均排名
print(obj4.rank(method="first"))#从小到大,相数据按出现顺序排列
print(obj4.rank(ascending=False))#降序,从大到小排,相同的数用平均排名
frame2=pd.DataFrame({"b":[4,7,-3,2],"a":[0,1,0,1],"c":[-2,5,8,-2.5]})
print(frame2.rank(axis="columns"))

5.2.7带有重复标签的索引值(以DataFrame为例)

frame3=pd.DataFrame(np.random.standard_normal(15).reshape(5,3),index=["a","a","b","b","c"])
print(frame3.loc["b"])#重复标签输出DataFrame
print(frame3.loc["c"])#单标签输出Series

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值