在数据分析过程中,很多时候我们需要从数据表中提取出我们需要的部分,而这么做的前提是我们需要先索引出这一部分数据。今天我们就来探索一下,如何在pandas中使用loc函数和iloc函数索引数据。

今天我们直接从例子出发:

import pandas as pd

import numpy as np

df = pd.DataFrame({'城市':['北京','广州', '天津', '上海', '杭州', '成都', '澳门', '南京'],

'收入':[10000, 10000, 5000, 5002, 40000, 50000, 8000, 5000],

'年龄':[50, 43, 34, 40, 25, 25, 45, 32]})

df.set_index([["一","二","三","四","五","六","七","八"]],inplace=True)

df

一、使用loc函数索引数据

(注意~loc函数主要通过 行标签 索引行数据)

1、索引行标签是“一”的这一行数据

df.loc["一"]

2、我们再来看另一种情况:

df.loc["一":"二"]

是不是很好奇!为什么会输出两个结果,而不是“前闭后开”只输出一个结果呢?

敲小黑板,这一点很重要了~

使用loc函数,索引的是字符串,前后都要取,是属于“前闭后闭”的情况。

3、索引“北京”这一个数据:

可以看到,在这里我们通过指定行索引和索引,取到了“北京”这一数据。

4、如何获取一个2*2的数据集(前两行前两列所交的四个数据为例):

5、索引“年龄”这一列数据:

注意看了~对于列标签来说,上面这样用是不允许的。在索引行的时候可以这么用。

正确的做法是:

df.loc[:,"年龄"]

要索引多列时也是一样的用法:

df.loc[:,"城市":"收入"]

二、使用iloc函数索引数据

(注意~iloc函数主要通过 行号 索引行数据)

而且,iloc函数索引的数据是int整型,因此是Python默认的前闭后开。注意只能说int型,也就是数字,输入字符的话是会报错的。

1、利用iloc索引第一行:

从上面三种表达,大家可以明确看到,iloc函数索引的是int型的数字,是属于前闭后开的。(注意~索引都是默认从0开始的~)

2、利用iloc函数索引多行:

假如这个时候我们想索引一下奇数行:

可以看到,当我们直接输入行号时,是会报错的。

正确的做法是:

df.iloc[[0,2,4,6]]

可以看到,在正确的做法中,我们需要键入一个列表,而不是一串数字~

当然了,我们可以用更智能的方法:

df.iloc[0:8:2]

3、利用iloc函数索引多列:

比如这个时候我们想索引一下收入列和年龄列,正确的做法是:

df.iloc[:,1:3]

或者是:

df.iloc[:,[1,2]]

4、利用iloc函数索引一个2*2的数据集:(前两行前两列所交的四个数据为例)

df.iloc[[0,1],[0,1]]

是不是和python的切片有点像呢?大家可不要将两者弄混了哦~

忘记的同学可以看这里温习一下:侦探L:如何在python中利用切片表达式进行切片​zhuanlan.zhihu.com

以上便是的内容,感谢大家的细心阅读,同时欢迎感兴趣的小伙伴一起讨论、学习,想要了解更多内容的可以看我的其他文章,同时可以持续关注我的动态~

python的loc函数_如何在pandas中使用loc、iloc函数进行数据索引(入门篇)相关推荐

  1. js保留两位小数的函数_如何在Excel中使用ROUND系列函数

    1. ROUND函数是对某个数字,根据指定的小数位进行四舍五入. 2. 先来看一个简单的例子"=ROUND(3.1415,2)",这是取3.1415的小数点后两位,四舍五入,得到3 ...

  2. Python数据分析小技巧:如何在Pandas中实现数据透视表?

    Python数据分析小技巧:如何在Pandas中实现数据透视表? 数据透视表是数据分析中非常有用的工具,可以帮助我们快速了解数据的结构.关联和趋势.在Pandas中,我们可以使用pivot_table ...

  3. python中的iloc函数_详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据

    pandas的DataFrame对象,本质上是二维矩阵,跟常规二维矩阵的差别在于前者额外指定了每一行和每一列的名称.这样内部数据抽取既可以用"行列名称(对应.loc[]方法)",也 ...

  4. python agg函数_个人对Pandas中agg、apply和transform函数的理解

    个人对Pandas中agg.apply和transform函数的理解 学习<利用Python进行数据分析>一书,关于pandas的这三个函数,个人理解如下. agg agg方法可以被gro ...

  5. 如何在pandas中使用loc、iloc函数进行数据索引

    二.使用iloc函数索引数据 (注意~iloc函数主要通过 行号 索引行数据) 而且,iloc函数索引的数据是int整型,因此是Python默认的前闭后开.注意只能说int型,也就是数字,输入字符的话 ...

  6. python绘图背景透明_如何在 Matplotlib 中更改绘图背景

    介绍Matplotlib是Python中使用最广泛的数据可视化库之一.无论是简单还是复杂的可视化项目,它都是大多数人的首选库.在本教程中,我们将研究如何在Matplotlib中更改绘图的背景.导入数据 ...

  7. python中squeeze函数_详解pytorch中squeeze()和unsqueeze()函数介绍

    squeeze的用法主要就是对数据的维度进行压缩或者解压. 先看torch.squeeze() 这个函数主要对数据的维度进行压缩,去掉维数为1的的维度,比如是一行或者一列这种,一个一行三列(1,3)的 ...

  8. typescript中函数_如何在TypeScript中合成Canvas动画

    typescript中函数 by Changhui Xu 徐昌辉 如何在TypeScript中合成Canvas动画 (How to Compose Canvas Animations in TypeS ...

  9. python 运行r语言_如何在R中运行Python

    python 运行r语言 尽管我很喜欢R,但很显然Python还是一种很棒的语言-既适用于数据科学又适用于通用计算. R用户想要在Python中做一些事情可能有充分的理由. 也许这是一个很棒的库,还没 ...

最新文章

  1. Java就业难不难?是否要参加Java培训?
  2. Java 二叉树 前序_java实现二叉树前序中序后序层次遍历
  3. 微程序控制器原理(增量方式和断定方式结合法)
  4. Rightmost Digit
  5. brew安装指定版本mysql,Mac 系统为 Valet 开发环境安装指定版本 MySQL
  6. 【计算机组成原理】Cache
  7. linux下重命名文件
  8. Hibernate对象标识符
  9. 相称显微镜下细胞群体跟踪
  10. 问题集录--新手入门深度学习,选择TensorFlow 好吗?
  11. 网络编程~socket
  12. 微软职位内部推荐-Senior Software Lead-Index Gen
  13. Rust : 如何将C字符串转换为Rust字符串并通过FFI返回?
  14. ChartControl控件
  15. MFC中Ribbon界面关于按钮禁用
  16. 手机电视-CMMB系统技术应用浅谈
  17. 解决IDEA运行后报找不到应用程序错误
  18. 基于网易云信WebRTC的Web音视频实现
  19. Matlab画圆方向图,如何在matlab里画天线的立体方向图?
  20. 软件测试 流程有哪些

热门文章

  1. 2022-2028全球钴镍合金行业调研及趋势分析报告
  2. 黑盒测试和白盒测试区别
  3. 黑裙安装-yellowcong
  4. jetson orin nx 模组刷机及环境配置(一)
  5. 使用DMA/Bridge Subsystem for PCI Express相关
  6. 几个超级大美女的搞钱经历!(限时删)
  7. 如何使用obs采集视频流/推流
  8. storm tread 耐克_无惧湿冷,NIKE飞马36 SHIELD防水版开箱_值客原创
  9. csharp基础练习题:简单有趣#21:向数氏族【难度:1级】--景越C#经典编程题库,不同难度C#练习题,适合自学C#的新手进阶训练
  10. 三天打鱼两天晒网(C语言)