반응형
SMALL
■ 사전 데이터 세팅
import pandas as pd
import numpy as np
sample = pd.read_csv("data/내국인 생활인구.csv", encoding="cp949")
sample
# 컬럼 한글명만 가져오기 및 컬럼치환
newCols = []
cols = sample.columns
for col in cols:
newCols.append(col.split("(")[0])
newCols
sample.columns = newCols
sample
# 인덱스를 일자로 치환
sample = sample.set_index("일자")
sample.head()
■ loc
• loc는 'Location based indexing'을 의미하며, 이를 통해 데이터 프레임에서 특정 행이나 열을 선택할 수 있다. 이를 사용하면 인덱스 값 또는 열 이름을 기준으로 특정 데이터를 추출할 수 있다.
- index : 선택하려는 행의 인덱스 레이블.
- column : 선택하려는 열의 이름.
• loc : 인덱스값으로 조회
#loc[행인덱스] -> row 조회
sample.loc[20170226:20180317]
• loc : 컬럼명으로 특정컬럼명에 따른 값 조회
#loc[행인덱스, 컬럼명] -> row&column 조회
# : -> 모든 행 조회
sample.loc[:,"시간": "집계구코드"]
■ iloc
• iloc는, loc와 다르게 pandas 데이터 프레임에서 인덱스 숫자를 기반으로 데이터를 선택하는 함수이다. 즉, 행과 열의 위치를 나타내는 숫자를 사용하여 데이터를 선택하게 된다.
# iloc[행인덱스번호] -> row 조회
sample.iloc[0:2]
■ 조건에 따른 데이터 인덱싱
# 조건에 대해 true, false 로 반환
sample["생활인구합계"] >= 1000
일자
20170226 False
20180107 False
20180317 True
20190222 False
20210706 False
...
20170603 False
20211007 False
20200819 False
20171011 False
20200725 True
Name: 생활인구합계, Length: 500, dtype: bool
# 해당 조건에 true 인 열 반환
sample[sample["생활인구합계"] >= 1000]
# loc 사용 인덱싱
sample.loc[sample["생활인구합계"] >= 5000]
■ 특정 조건과 or 연산자를 통한 데이터 조회
# 생황인구합계가 1000 이상이고, 행정동 코드가 11230536 인 데이터
condition = (sample["생활인구합계"] >= 1000) | (sample["행정동코드"] == "11230545")
condition
#샘플에 조건넣기
sample[condition]
LIST
'Programming > python' 카테고리의 다른 글
[ python ] pandas 에서 apply 함수 (0) | 2024.05.11 |
---|---|
[ Python ] pandas 자주 쓰는 함수 (0) | 2024.05.10 |
[ Python ] 주피터 노트북 간략 사용법 (0) | 2024.05.06 |
[ python ] pandas DataFrame 사용법 기초 (0) | 2024.05.06 |
[ Python ] python 반복문 기본문법 (0) | 2024.05.06 |