python包介绍:GeoPandas(初识)_UQI-LIUWJ的博客-CSDN博客

python 库整理:pandas_UQI-LIUWJ的博客-CSDN博客

1 set_index

将 DataFrame 中的列转化为行索引。

默认情况下,转换之后,原来的列将不见

1.1 基本使用方法

DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)

1.2 参数说明

keys 列标签(需要设置为索引的列)
drop

删除用作新索引的列

默认为True

append

是否将列附加到现有索引

默认为False

inplace

表示当前操作是否对原数据生效

默认为False

verify_integrity

检查新索引的副本

将其设置为False将提高该方法的性能

默认为false

1.3 举例说明

1.3.0 原始数据

import pandas as pddata={'a':range(7),'b':range(7,0,-1),'c':['one','one','one','two','two','two','two'],'d':[0,1,2,0,1,2,3]}
f1=pd.DataFrame(data)
f1'''a   b   c   d
0   0   7   one 0
1   1   6   one 1
2   2   5   one 2
3   3   4   two 0
4   4   3   two 1
5   5   2   two 2
6   6   1   two 3
'''

1.3.1 默认情况

f1.set_index(['c'])
'''a b   d
c
one 0   7   0
one 1   6   1
one 2   5   2
two 3   4   0
two 4   3   1
two 5   2   2
two 6   1   3
'''

1.3.2 保留索引所在的列(drop)

f1.set_index(['c'],drop=False)
'''a b   c   d
c
one 0   7   one 0
one 1   6   one 1
one 2   5   one 2
two 3   4   two 0
two 4   3   two 1
two 5   2   two 2
two 6   1   two 3
'''

1.3.3 多重索引

f1.set_index(['c','d'], drop=False)
'''a b   c   d
c   d
one 0   0   7   one 01  1   6   one 12  2   5   one 2
two 0   3   4   two 01  4   3   two 12  5   2   two 23  6   1   two 3
'''f1.set_index(['d','c'], drop=False)
'''a b   c   d
d   c
0   one 0   7   one 0
1   one 1   6   one 1
2   one 2   5   one 2
0   two 3   4   two 0
1   two 4   3   two 1
2   two 5   2   two 2
3   two 6   1   two 3
'''

1.3.4 添加到原有索引(append)

f1.set_index('c', append=True)
'''a b   dc
0   one 0   7   0
1   one 1   6   1
2   one 2   5   2
3   two 3   4   0
4   two 4   3   1
5   two 5   2   2
6   two 6   1   3
'''

1.3.5 手动指定索引

f1.set_index([pd.Index([1,2,3,4,5,6,7]), 'c'])
'''a b   dc
1   one 0   7   0
2   one 1   6   1
3   one 2   5   2
4   two 3   4   0
5   two 4   3   1
6   two 5   2   2
7   two 6   1   3'''

1.3.6 索引计算

s = pd.Series([1,2,3,4,5,6,7])
f1.set_index([s, s**2])
'''a b   c   d
1   1   0   7   one 0
2   4   1   6   one 1
3   9   2   5   one 2
4   16  3   4   two 0
5   25  4   3   two 1
6   36  5   2   two 2
7   49  6   1   two 3
1
​
'''

1.3.7 修改原始数据(inplace)

f1.set_index(['c','d'], inplace=True)
f1
'''a b
c   d
one 0   0   71  1   62  2   5
two 0   3   41  4   32  5   23  6   1
'''

2 reset

重新设置 DataFrame 索引

2.1 使用方法

DataFrame.reset_index(level=None, drop=False, inpalce=False, col_level=0, col_fill=' ')

2.2 参数说明

level

数值类型, int、str、tuple或list

默认无——删除所有级别的索引

指定level——删除指定级别

drop

当指定 drop=False 时,则索引列会被还原为普通列;

否则,经设置后的新索引值被会丢弃

默认为False

inplace

布尔类型 是否修改原始数据框

默认False

2.3 举例

2.3.0 原始数据

import pandas as pddata={'a':range(7),'b':range(7,0,-1),'c':['one','one','one','two','two','two','two'],'d':[0,1,2,0,1,2,3]}
f1=pd.DataFrame(data)
f1=f1.set_index(['c','d'])
f1'''a   b
c   d
one 0   0   71  1   62  2   5
two 0   3   41  4   32  5   23  6   1
'''

2.3.1 level

level=数字,或者等于索引的名称都可以

f1.reset_index(level='c')
#等价于
f1.reset_index(level=0)
'''c a   b
d
0   one 0   7
1   one 1   6
2   one 2   5
0   two 3   4
1   two 4   3
2   two 5   2
3   two 6   1
'''f1.reset_index(level='d')
#等价于
f1.reset_index(level=1)
'''d a   b
c
one 0   0   7
one 1   1   6
one 2   2   5
two 0   3   4
two 1   4   3
two 2   5   2
two 3   6   1
'''

Pandas (GeoPandas)笔记:set_index reset_index相关推荐

  1. pandas学习笔记------set_index()

    pandas中set_index()方法是专门用来将某一列设置为index的方法. 主要参数: keys:需要设置为index的列名 drop:True or False.将某列设置为index后,是 ...

  2. 数据分析之pandas学习笔记(六)(层次化索引、重塑、轴向旋转、行列变换、合并表数据)

    数据分析之Pandas学习笔记(六)(层次化索引.重塑.轴向旋转.行列变换.合并表数据) level层次化索引 unstack()与stack()进行重塑,即:行列索引变换 swaplevel()交换 ...

  3. Pandas学习笔记(一)

    Pandas学习笔记一 Pandas数组读取 读取csv.tsv.txt文件 读取excel文件 读取mysql数据表 Pandas数据结构 创建Series的几种方法 根据标签查询Series数据 ...

  4. pandas学习笔记:pandas.Dataframe.rename()函数用法

    pandas学习笔记:pandas.Dataframe.rename()函数用法 pandas.Dataframe.rename()函数主要是用来修改Dataframe数据的行名和列名. 主要用到的参 ...

  5. pandas学习笔记之DateFrame

    pandas学习笔记之DateFrame 文章目录 pandas学习笔记之DateFrame 1.DateFrame的创建 1)认识DataFrame对象 2)由二维列表创建(默认index和colu ...

  6. [Pandas 学习笔记] - No.1 pandas学习笔记

    pandas学习笔记 pandas是基于numpy开发出的数据分析包,用于高效地操作大型数据集.pandas的数据结构有三种 分别为 series,dataframe和panel,对应一维,二维,三维 ...

  7. pandas学习笔记之Series

    pandas学习笔记之Series 文章目录 pandas学习笔记之Series pandas中Series的创建 1)用python中的列表list创建: 2)用numpy数组创建 3)用pytho ...

  8. pandas使用笔记大全

    DataFrame使用笔记 dates=pd.date_range('20160728',periods=6) #创建固定频度的时间序列 df=pd.DataFrame(np.random.randn ...

  9. 丞相弩的pandas基础笔记

    pandas笔记 pandas数据分析 pandas是Python的一个数据处理的模块,是一个表格处理器.用Python做数据分析,pandas是必不可少的. 首先必须要导入这个pandas库: im ...

最新文章

  1. 微信小程序一键创建js,json,wxml,wxss
  2. 深入剖析nginx第141页
  3. python:数据操作小技巧
  4. Oracle脑裂 驱逐,了解Oracle RAC Brain Split Resolution集群脑裂协议
  5. 跟我一起学.NetCore之WebApi接口裸奔有风险(Jwt)
  6. django14:CBV加入装饰器
  7. pta7-3 统计不及格人数_应用统计专硕院校专业难度分析【青岛大学、苏大、西安交通大学】...
  8. Clojure 学习入门(13)- binding
  9. Visual Studio 2008 Designer.cs不能更新/自动添加控件声明的解决办法
  10. 使用Vue对接网易云音乐
  11. bessel 函数乘以指数函数的积分
  12. PWM呼吸灯(小白版)
  13. vmware workstation 使用桥接网络 上网
  14. JavaEE全套资料+视频+工具
  15. calcite mysql_jsqlparser和calcite和druid功能对比
  16. 微信公众号开启服务器配置流程及注意事项
  17. 【分布式技术专题】「OSS中间件系列」从0到1的介绍一下开源对象存储MinIO技术架构
  18. AcWing 135. 最大子序和(单调队列优化 dp)
  19. 实时最新中国省市区县geoJSON格式地图行政边界数据Echarts地图数据(可精确到街道级)
  20. 测试、测试开发面试准备和复习

热门文章

  1. 奥迪坚呼叫中心在电话营销领域必须要了解的几大优势
  2. java 常见中文乱码问题解决
  3. Android典型界面设计(8) ——ViewPager+PagerSlidingTabStrip实现双导航
  4. SaaS系统给企业带来了哪些优势
  5. 安装CocoaPods
  6. 模块化开发seajs 配置和简单调用
  7. 如何提高代码质量:代码复查
  8. 对Struts2的认识(-)
  9. innodb_monitor
  10. source insight 4.0 护眼背景色设置