浅谈Pandas 排序之后索引的问题

yipeiwu_com5年前Python基础

如下所示:

In [1]: import pandas as pd
 ...: df=pd.DataFrame({"a":[1,2,3,4,5],"b":[5,4,3,2,1]})
In [2]: df
Out[2]: 
 a b
0 1 5
1 2 4
2 3 3
3 4 2
4 5 1
In [3]: df=df.sort_values(by="b") # 按照b列排序
In [4]: df
Out[4]: 
 a b
4 5 1
3 4 2
2 3 3
1 2 4
0 1 5
In [5]: df.loc[0,:] # 按索引来索引所以得到了是排序末位
Out[5]: 
a 1
b 5
Name: 0, dtype: int64
In [6]: df.iloc[0,:] # 按照绝对的索引来索引,所以得到了第一位
Out[6]: 
a 5
b 1
Name: 4, dtype: int64
In [7]: df.iloc[0,"b"] # 因为是绝对位置,所以列的参数不能是列名
ValueError: Location based indexing can only have [integer, integer slice (START point is INCLUDED, END point is EXCLUDED), listlike of integers, boolean array] types
In [8]: df.iloc[0,1] # “b”列的绝对位置是1,所以这就是索引了“b”列
Out[8]: 1
In [9]: df.iloc[0,:]["b"] # 和上述方法是一样的,不过这个更加容易懂一些
Out[9]: 1

以上这篇浅谈Pandas 排序之后索引的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用Rasterio读取栅格数据的实例讲解

Rasterio简介 有没有觉得用GDAL的Python绑定书写的代码很不Pythonic,强迫症的你可能有些忍受不了。不过,没关系,MapBox旗下的开源库Rasterio帮我们解决了...

centos7中安装python3.6.4的教程

Python3.6.4官方版是一款在适合开发人员使用的windows系统上运行的脚本语言工具,Python3.6.4官方版是目前程序设计从业者必学的语言之一。我们可以通过python平台...

python整合ffmpeg实现视频文件的批量转换

转换工具层出不穷,ffmpeg才是全能的转换工具,只是不支持图形操作。 没有关系,命令行方式,在freebsd/linux下直接来 我们的思路是,设定一个文件夹存放源视频文件,pytho...

Python装饰器用法实例总结

本文实例讲述了Python装饰器用法。分享给大家供大家参考,具体如下: 写装饰器 装饰器只不过是一种函数,接收被装饰的可调用对象作为它的唯一参数,然后返回一个可调用对象(就像前面的简单例...

从列表或字典创建Pandas的DataFrame对象的方法

从列表或字典创建Pandas的DataFrame对象的方法

介绍 每当我使用pandas进行分析时,我的第一个目标是使用众多可用选项中的一个将数据导入Pandas的DataFrame 。 对于绝大多数情况下,我使用的 read_excel ,...