python中iloc和loc切片的实现是怎样的
Admin 2022-08-18 群英技术资讯 1112 次浏览
这篇文章给大家分享的是python中iloc和loc切片的实现是怎样的。小编觉得挺实用的,因此分享给大家做个参考,文中的介绍得很详细,而要易于理解和学习,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
正下标从0开始,负下标从-1开始1。切片的时候包括头不包括尾部。








loc是指location的意思,iloc中的i是指integer。
【1】iloc:根据标签的所在位置,从0开始计数,先选取行再选取列
【2】loc:根据DataFrame的具体标签选取行列,同样是先行标签,后列标签

由上图可以看出:iloc[:4,2]和loc[:4,2]是不一样的,前者不包括4,后者包括4
lypdfdata=lypdf.iloc[:,1:-1].values lypdftarget=lypdf.iloc[:,:-1].values # 逗号前面是属于行,后面是属于列



import numpy as np
import pandas as pd
#创建一个Dataframe
data=pd.DataFrame(np.arange(16).reshape(4,4),index=list('abcd'),columns=list('ABCD'))
In[1]: data
Out[1]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
#取索引为'a'的行
In[2]: data.loc['a']
Out[2]:
A 0
B 1
C 2
D 3
#取第一行数据,索引为'a'的行就是第一行,所以结果相同
In[3]: data.iloc[0]
Out[3]:
A 0
B 1
C 2
D 3
In[4]:data.loc[:,['A']] #取'A'列所有行,多取几列格式为 data.loc[:,['A','B']]
Out[4]:
A
a 0
b 4
c 8
d 12
In[5]:data.iloc[:,[0]] #取第0列所有行,多取几列格式为 data.iloc[:,[0,1]]
Out[5]:
A
a 0
b 4
c 8
d 12
In[6]:data.loc[['a','b'],['A','B']] #提取index为'a','b',列名为'A','B'中的数据 Out[6]: A B a 0 1 b 4 5 In[7]:data.iloc[[0,1],[0,1]] #提取第0、1行,第0、1列中的数据 Out[7]: A B a 0 1 b 4 5
In[8]:data.loc[:,:] #取A,B,C,D列的所有行
Out[8]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
In[9]:data.iloc[:,:] #取第0,1,2,3列的所有行
Out[9]:
A B C D
a 0 1 2 3
b 4 5 6 7
c 8 9 10 11
d 12 13 14 15
In[10]: data.loc[data['A']==0] #提取data数据(筛选条件: A列中数字为0所在的行数据) Out[10]: A B C D a 0 1 2 3 In[11]: data.loc[(data['A']==0)&(data['B']==2)] #提取data数据(多个筛选条件) Out[11]: A B C D a 0 1 2 3
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
默认作用域前段时间学了下Lua,发现Lua的默认作用域和Python是相反的。Lua定义变量时默认变量的作用域是全局(global,这样说不是很准确,L
本文主要介绍了Tkinter 组件Scrollbar的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
在本篇文章里小编给大家整理了一篇关于python Task如何在协程调用的相关内容,有兴趣的朋友们可以参考下。
在python中,我们经常会使用到字符串,它可以来表示文件的描述、硬件的标识等。字符串的使用可以方便我们编程的操作。我们在使用字符串的时候,也经常遇到分割这个词。你知道如何字符串分割字符串吗?今天小编就带大家认识一下python中分割字符串的explode() 函数。
这篇文章介绍了Python中深拷贝与浅拷贝的区别,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008