python iloc和loc,Python中iloc
Loc和iloc是在pandas工具中定位某一行的函数。下面的文章主要介绍了的区别、联系和用法。iloc和。Python学习中的loc。通过示例代码详细介绍,有需要的朋友可以参考一下。
00-1010 1.联系人2。区别三。用法3.1所有行和列从0开始顺序编号。3.2有一行或一列没有从0开始按顺序编号。3.3行或列为非数字标签。3.4其他用法总结。最近接触了数据科学,需要分析一些数据表。观察到loc和iloc再次出现在代码中。下面是我对两者用法的理解。
目录
(1)操作对象相同:loc和iloc都是对DataFrame类型进行操作;
(2)补全的目的是一样的:都是用来选择DataFrame中相应行或列的元素。
1.联系
loc和iloc索引的行和列标签类型不同。
Iloc使用顺序数字来索引数据,但不能使用字符标签来索引数据;注意:这里的序号是指从0开始计数!
Loc使用实际设置的索引来索引数据。但是当行名和列名都是数字的时候,loc也可以索引数字,但是这里的数字不一定是从0开始编号的,而是具体行名和列名对应的数字!
2.区别
下面的代码用来解释这两者的用法。
3.用法
进口熊猫作为pd
将numpy作为np导入
a=np.arange(12)。整形(3,4)
#将A转换为DataFrame类型
df=pd。数据帧(a)
#显示df
df
由于df的行和列没有命名,默认从0开始编号,所以此时使用loc和iloc的结果是一样的。
索引是一个数字,默认输出行。
Print(df.loc[0])#输出第0行中的元素
Print(df.iloc[0])#输出第0行中的元素
两者的输出结果是:
0 0
1 1
2 2
3 3
名称: 0,数据类型: int32
输出是df的行0中的元素。结果中的第一列表示列名,第二列表示特定值。如果只需要输出一列,输入df.loc[:0]输出第0列。
如果需要输出0到2列的数据。
#模式1
Df。loc [:033602] # Loc可以理解为遍历字符串类型,而033602表示标签为0,1,2。
#模式2
Df.iloc [:033603]# python中iloc,033603遍历的数字对应0,1,2。
输出结果是:
3.1行列全为从0开始顺序编号
#将线条标签更改为另一个数字
df.index=[2,5,7]
df.loc[2]
此时df变为:
输出是:
0 0
1 1
2 2
3 3
名称: 2,数据类型: int32
输出对应于列标签为“2”的行。
我们继续用df.iloc[2]输出结果:
0 8
1 9
2 10
3 11
名称: 7,数据类型: int32
输出是第2行中的数据。
在这里,我们可以对loc和iloc的用法有一个大致的了解。
3.2有一行或列不是从0顺序编号
#将线条标签转换为非数字类型
df.index=[a , b , c]
#输出行A和B以及列0到2的数据。
#模式1
Df.loc[[a , b],0:2]#可以理解为遍历字符串类型,而0:2则表示标记为0,1,2的三列。
#模式2
Df.iloc [0:2,033603] # iloc遍历数字,033602代表0,10:3代表0,1,2。
两者的输出结果是:
3.3行或者列为非数字标签
通常,表的行为被列为数字类型0中的特定字符串类型。行数容易确定,列的列名也容易确定。
#将线路改为0 1 2号码
df.index=[0,1,2]
#列标签更改为B C D。
df.columns=[A , B , C , D]
Df.iloc[1][A]#实现第一行A列数据的输出。
输出为4。
如果想用df.iloc[1][[A , B]]输出第1行AB列,这里请注意 A 和 B 是作为列表输入的,右边有两个括号。
输出结果:
A 4
B 5
名称: 1,数据类型: int32
Df.iloc[1][[A , B]]等价于Df。iloc [1,033602],但很多情况下我们并不知道具体列名对应的数字,所以第一种方法可以提高编程效率。
3.4 其他用法
关于的区别、联系和用法的这篇文章到此为止。iloc和。Python学习中的loc。有关。iloc和。loc,请搜索热门IT软件开发工作室之前的文章或者继续浏览下面的相关文章。希望你以后能支持风行IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。