pandas loc和iloc区别
1.区别
两者的区别就在于获取行数据的方式有点不同:
- loc:通过行标签来获取数据
- iloc通过行号来获取数据。
2.例子
import pandas as pd
import numpy as np
#这里的index赋值的是行标签,columns是列标签
df = pd.DataFrame(np.random.randn(5,2),index=range(0,10,2),columns=list('AB'))
print(df)
# A B
#0 -0.866576 -0.482136
#2 -1.615245 0.339495
#4 -0.148102 1.001672
#6 -0.979928 1.066443
#8 -0.617812 -0.102871
#因为按行号检索数据,行标签无视,所以全部输出
print(df.iloc[0:5])
# A B
#0 -0.866576 -0.482136 (第0行)
#2 -1.615245 0.339495 (第1行)
#4 -0.148102 1.001672 (第2行)
#6 -0.979928 1.066443 (第3行)
#8 -0.617812 -0.102871 (第4行)
#检索的是行标签,而非行号,所以这里输出0,2,4
print(df.loc[0:5])
# A B
#0 -0.866576 -0.482136
#2 -1.615245 0.339495
#4 -0.148102 1.001672