인덱싱(Indexing)
데이터프레임에서 인덱싱은 행(row) 또는 열(column)을 선택하는 것을 의미합니다. 데이터프레임은 보통 행과 열에 대한 이름을 가지고 있으며, 이를 이용하여 인덱싱을 할 수 있습니다.
열(column) 인덱싱
열 인덱싱은 데이터프레임에서 열(column)을 선택하는 것을 의미합니다. 열 인덱싱은 대괄호 [] 안에 열 이름을 넣어서 수행합니다. 예를 들어, 다음과 같은 데이터프레임이 있다고 가정해보겠습니다.
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'gender': ['F', 'M', 'M', 'M']
})
df['name']
>>>
0 Alice
1 Bob
2 Charlie
3 David
Name: name, dtype: object
이 데이터프레임에서 name 열을 선택했습니다.
행(row) 인덱싱
행 인덱싱은 데이터프레임에서 행(row)을 선택하는 것을 의미합니다. 행 인덱싱은 loc 메서드를 사용하여 수행합니다. loc 메서드는 대괄호 [] 안에 행의 이름을 넣어서 수행합니다. 예를 들어, 다음과 같은 데이터프레임이 있다고 가정해보겠습니다.
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'gender': ['F', 'M', 'M', 'M']
}, index=['A', 'B', 'C', 'D'])
df.loc['B']
>>>
name Bob
age 30
gender M
Name: B, dtype: object
이 데이터프레임에서 B 행을 선택하려면 다음과 같이 코드를 작성합니다.
이 코드를 실행하면 다음과 같은 출력을 얻을 수 있습니다.
슬라이싱(Slicing)
데이터프레임에서 슬라이싱은 행(row)을 범위로 선택하는 것을 의미합니다. 슬라이싱은 loc 메서드를 사용하여 수행합니다. loc 메서드는 대괄호 [] 안에 행의 이름 범위를 넣어서 수행합니다.
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'gender': ['F', 'M', 'M', 'M']
}, index=['A', 'B', 'C', 'D'])
df.loc['B':'C']
>>>
name age gender
B Bob 30 M
C Charlie 35 M
이 데이터프레임에서 B부터 C까지의 행을 선택했습니다. 슬라이싱에서는 시작 인덱스와 끝 인덱스 모두 포함됩니다.
또한, 열(column)에 대해서도 슬라이싱을 할 수 있습니다. 열 슬라이싱은 loc 메서드를 사용하여 수행합니다. loc 메서드는 대괄호 [] 안에 열 이름 범위를 넣어서 수행합니다. 예를 들어, 다음과 같은 데이터프레임이 있다고 가정해보겠습니다.
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'gender': ['F', 'M', 'M', 'M']
}, index=['A', 'B', 'C', 'D'])
df.loc[:, 'age':'gender']
>>>
age gender
A 25 F
B 30 M
C 35 M
D 40 M
이 데이터프레임에서 age부터 gender까지의 열을 선택하였습니다. 슬라이싱에서는 시작 열과 끝 열 모두 포함됩니다.
이상으로 데이터프레임에서의 인덱싱과 슬라이싱에 대해 알아보았습니다.
'pandas' 카테고리의 다른 글
복수열 조건문을 활용한 데이터프레임 필터링과 선택 (0) | 2023.03.27 |
---|---|
람다(lambda) 함수와 함께하는 판다스(Pandas) apply() 메소드 활용법 (0) | 2023.03.27 |
Matplotlib으로 효과적인 데이터 시각화 방법 익히기 (2) | 2023.03.24 |
Seaborn을 활용한 데이터 시각화 - 깔끔하고 유용한 시각화 기법들 (0) | 2023.03.24 |
다양한 그래프 유형으로 살펴보는 데이터 시각화! (0) | 2023.03.23 |
댓글