Python Pandas 파이썬 판다스 loc과 iloc의 차이
✔ loc
1. 데이터프레임의 행이나 컬럼에 label이나 boolean array로 접근.
2. location의 약어로, 인간이 읽을 수 있는 label 값으로 데이터에 접근하는 것이다.
✔ iloc
1. 데이터프레임의 행이나 컬럼에 인덱스 값으로 접근.
2. integer location의 약어로, 컴퓨터가 읽을 수 있는 indexing 값으로 데이터에 접근하는 것이다.
예시
✔ 데이터 프레임 생성
import pandas as pd
df = pd.DataFrame({
"bid_id": [1, 2, 3],
"bidder_id": ["Gadi", "Conda", "Lion"],
"city": ["Seoul", "LA", "Sydney"],
"item": ["TV", "jewelry", "book"]}).set_index("bid_id")
df
📌 iloc을 이용해서 데이터에 접근하기
✔ 첫번째 행 접근
df.iloc[0]
✔ 두번째 행 접근
df.iloc[1]
✔ 세번째 행 접근
df.iloc[2]
✔ 마지막 행 접근
df.iloc[-1]
✔ 첫번째 열 접근
df.iloc[:,0]
✔ 두번째 열 접근
df.iloc[:,1]
✔ 세번째 열 접근
df.iloc[:,2]
✔ 마지막 열 접근
df.iloc[:,-1]
📌 loc을 이용해서 데이터에 접근하기
✔ 레이블 이름이 1인 행에 접근
df.loc[1]
이 때 주의해야 할 부분은, loc[1]에서 1은 레이블 이름이므로 인덱스 번호와는 구분된다는 사실을 알아야 한다. 인덱스로 이 데이터에 접근하려면 df.iloc[0] 이라고 접근해야 한다.
✔ 레이블 이름이 city인 열에 접근
df.loc[:, "city"]
✔ 참고
pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.loc.html
pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iloc.html
반응형