基本上我想知道两者之间的区别:
data.iloc[0:2]
和
data[0:2]
这两个熊猫数据框都不都是。返回相同的信息?我使用的一个有关系吗?
答案 0 :(得分:0)
当您的DataFrame的索引与位置不同时,它们可以不同。
iloc
基于绝对位置,就像Python中的list
一样。
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
有关更多详细信息,请参阅this page。