聊聊Python pandas 中loc函数的使用,及跟iloc的区别说明
作者:Rainpages 发布时间:2023-08-11 09:11:36
loc和iloc的意思
首先,loc是location的意思,和iloc中i的意思是指integer,所以它只接受整数作为参数,详情见下面。
loc和iloc的区别及用法展示
1.区别
loc works on labels in the index.
iloc works on the positions in the index (so it only takes integers).
2.用法展示
首先创建一个dataframe:
1)loc为Selection by Label函数,即为按标签取数据,标签是什么,就是上面的'0'~‘4', ‘A'~‘B'。
例如第一个参数选择index,第二个参数选择column,如下图:
建议写df.loc[0, :],这样可以清楚的看出为第0行的所有记录,同样如果取第'A'列的所有记录,可以写df.loc[:, ‘A'],如下图:
:表示所有,[]里边为先行后列。
2)iloc函数为Selection by Position,即按位置选择数据,即第n行,第n列数据,只接受整型参数
记住,0:2为左闭右开区间,即取0,1,如下图:
若要取第一列的所有数据,则为df.iloc[:, 0],记住不接受'A'作为参数,如下图:
补充:只需一个例子帮你搞清并记住python loc和iloc
帮你区分python loc和iloc
最基本的概念loc通常用于行标签和列标签,iloc通常直接用于行序号和列序号,具体举个例子帮助大家理解。
创建一个以abcd为索引,四行三列的Dataframe。
df = pd.DataFrame({'number':[10,20,30,20],
'科目':['语文','数学','英语','化学'],
'名称':['小米','华为','苹果','联想']},index=['a','b','c','d'])
print(df)
结果如图所示 :
先来看loc:
print(df.loc['a':'c'])
print(df.loc[['a','c']])
print(df.loc[:'c'])
分别输出a行到c行;a行和c行;a行到c行。
如图所示:
还可以设置取出某几行某几列:
print(df.loc[:'c',['number','科目']])
结果如下图所示:取出a到c行的number和科目列。
如下图所示:
loc基本用法就这些。实际上iloc用法和loc差不多,但iloc不是直接取已有索引。而是默认索引就是1,2,3,4~~~
同样的我们用iloc做下上述操作。
print(df.iloc[0:3])
print(df.iloc[[0,2]])
print(df.iloc[:3])
结果同样如上图所示:
用iloc取出a到c行的number和科目列:
print(df.iloc[0:3,[0,1]])
结果如下图所示:
我相信读到这里大家应该就理解了它们的用法。最后再提醒大家一下,loc不管行还是列调用的都是Dataframe自身的行标签和列标签。
而iloc调用的是行[1,2,3,4~],列[1,2,3,4]。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/u014712482/article/details/85080864
猜你喜欢
- 如果你在学校读的是计算机科学专业,那么可能学过 Lambda 表达式, 不过可能从来没有用过它。如果你不是计算机科学专业,它们看着可能 有点
- 一、random模块简介Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打
- 这里列出了javascript 中的document.execCommand() 的各种参数说明:2D-Position 允许通过
- 新上的一台服务器出现了一个现象:ASP程序中,调用函数Now(),显示的时间总是形如“2009-07-12 上午 08:12:56”这样的,
- 下面代码即是VBScript代码在服务器端编译后的显示内容,如果我们把这段代码保存成静态文件(HTML)或JS文件,那么上一篇提出的问题就迎
- 本文实现了用Python和OpenCV配合,调用本地摄像头采集视频,基本上函数的话看opencv的官方文档就Ok了(The OpenCV R
- SQL Server数据库快捷键:书签:清除所有书签。 CTRL-SHIFT-F2书签:插入或删除书签(切换)。 CTRL+F2书签:移动到
- 下面这些命令可以在命令行下用isql执行,isql -E -Q "命令",isql.exe
- 一、前言相关知识来自《python算法设计与分析》。初级排序算法是指几种较为基础且容易理解的排序算法。初级排序算法包括插入排序、选择排序和冒
- 接下来,我们将实现微信朋友圈的爬取。如果直接用 Charles 或 mitmproxy 来监听微信朋友圈的接口数据,这是无法实现爬取的,因为
- XML、 XLink、 Namespace、 DTD、 Schema、 CSS、 XHTML...假如你从未接触XML, 或许你会感觉不知从
- 一个表单焦点效果javascript函数,可以用在美化表单界面,挺好看的。function validForms(){  
- 1、确认框架中安装了第三方alibabacoud控件实现代码如下上传过程中遇到任务问题,可以进行留言<?php namespace A
- sql代码如下:CREATE PROCEDURE Proname //使用CREATE PROCED
- 想要追赶 Python 的热潮,应该如何学习呢?现在许多人在自学之外,都会选择去培训机构学习。选择培训机构的的标准是什么呢?什么样的pyth
- 编写 models.py 文件from django.db import models# Create your models here.c
- # 基础版,不依赖环境import timeimport base64import hashlibclass Token_hander():
- 工作中遇到一个很棘手的问题,交互设计师和视觉设计师在做出高保真原型后提交给前端开发工程师,最后得到的web产物从细节上和布局上都和高保真原型
- 对于DataFrame的修改操作其实有很多,不单单是某个部分的值的修改,还有一些索引的修改、列名的修改,类型修改等等。我们仅选取部分进行介绍
- 今天,由于工作需要,我在自己的电脑上配置了Mysql5环境,同时安装了一个phpMyAdmin管理工具,安装完成后,发现在phpMyAdmi