Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- pandas
- 통화정책파급경로
- Nas
- 주식
- dataanalysis
- SQL
- RL
- ldbc
- 책읽는케이크
- 증권투자권유자문인력
- 프로그래머스
- 파이썬
- 독서모임
- 요한하리
- 카카오
- 재무제표
- 인도가격
- 블라인드테스트
- montecarlo
- 독후감
- 코딩테스트
- python
- 집중하는법
- 재무엑셀
- ReinforcementLearning
- 도둑맞은집중력
- 통화주의학파
- agviewer
- 파생상품평가모형
- potatoeseater
Archives
- Today
- Total
이것저것 담는 블로그
Pandas DataFrame 행 조회할 때 iterrows() 헷갈리지 않게 사용하기 본문
필자는 pandas를 쓰면서 dataframe의 행을 순서대로 조회할때 df.iterrows() 메서드를 가장 많이 사용한다.
iterrows()를 쓰다보면 헷갈리는 것들이 조금 있어서 정리하고자 한다.
우선 아래와 같은 dataframe을 정의해보자.
import pandas as pd
sample_df = pd.DataFrame([100, 90], index=['나나', '모모'], columns=['점수'])
이 dataframe을 조회하기 위해 두가지 방법으로 iterrows() 메서드를 사용할 수 있다.
1. 인덱스와 행을 같이 가져올 때
for idx, row in sample_df.iterrows():
print(idx, row)
print(type(row))
print(row['점수'])
여기서 idx는 당연히 string이고 row는 pandas의 Series 로 나온다.
따라서 Series에서 column명으로 데이터에 접근하면 100 90 이 차례로 나오는 것을 확인할 수 있다.
2. 행만 가져올 때
for row in sample_df.iterrows():
print(row, type(row))
print(row[0], type(row[0]))
print(row[1], type(row[1]))
여기서 row는 tuple인데 첫번째 값은 그 행의 index 값, 두번째 값은 위에서 리턴한 row와 같은 Series 형태의 데이터이다.
정리하자면 dataframe.iterrows() 메서드는 인덱스, 데이터 series를 순서대로 내뱉는데,
인덱스 미리 뽑아놓고 싶으면 for문에서부터 idx, row 이런 식으로 뺄 수 있다는 것이다.
'IT > Python' 카테고리의 다른 글
Python any, all 메서드 (0) | 2022.11.30 |
---|---|
Pandas SettingWithCopyWarning 해결방법 (0) | 2021.10.18 |