python - Panda Slicing Notation 有什么更好的
问题描述
基本上我想知道有什么区别:
data.iloc[0:2]
和
data[0:2]
这两个熊猫数据框都不会。返回相同的信息?我用的那个有关系吗?
解决方案
当您的 DataFrame 的索引与位置不同时,它们可能会有所不同。
iloc
基于绝对位置,如list
Python 中的 a 。
loc
基于DataFrame的索引。
例如,如果我们有这个 DataFrame:
df = pd.DataFrame([['a'], ['b'], ['c'], ['d']], index=[1, 2, 3, 4])
df
0
1 a
2 b
3 c
4 d
iloc
会给你基于位置的切片而不是df
. 请注意,它不包括最后一个位置。
data.iloc[1:3]
0
2 b
3 c
相反,loc
会给你基于索引的切片。请注意,这包括给定切片的最后一个索引。
data.loc[1:3]
0
1 a
2 b
3 c
有关更多详细信息,请参阅此页面。
推荐阅读
- powershell - 为什么我的 Powershell 脚本检查进程是否正在运行,如果找不到进程,则会出现错误?
- python-3.x - 删除启动消息以更改 Spark 日志级别
- java - Jar 无法访问资源文件夹
- sql - How do I list out items that contain a certain letter no matter if it's cyrillic or latinic?
- python - Lambda 在完成后自动删除转录作业
- forms - RadDataForm 未在第一次绘制时显示
- mysql - MySql 查询避免负余额
- php - 有没有办法从另一个表中插入记录
- android - Android:屏幕部分上方的视图,与主布局独立移动
- python - 使用 python 绘制图表值