DataFrame의 특정 열에 접근할 때 보통 row['col_name']을 사용하지만, 전처리 과정이나 외부 데이터 병합 이후 컬럼이 조건부로 생성될 수 있는 경우에는 get()이 훨씬 안전할 수 있습니다. 이번 글에서는 .get()을 사용하는 방법과 장단점을 정리해보았습니다. 함수 설명Series.get(key, default)메서드는 존재하지 않는 키(열 이름)에 접근할 경우 오류를 발생시키지 않고, 대신 기본값(default)을 반환하는 안전한 접근 방식입니다. 예시 코드import pandas as pd# 예제 데이터df = pd.DataFrame({ 'name': ['홍길동', '이몽룡', '성춘향'], 'age': [25, 27, 22]})# 존재하지 않는 컬럼을 조회할 때for..
Study/Python
데이터 정제 작업 중, 두 컬럼을 비교해서 한쪽이 비어 있으면 다른 값으로 채워야 할 때가 있습니다. 이때 fillna()를 주로 사용하지만, 인덱스가 다른 상황에서는 combine_first()가 더 안전한 선택입니다. 이번 글에서는 두 메서드의 차이를 예제로 비교하면서, 어떤 상황에 어떤 함수를 쓰면 좋은지 정리해보겠습니다. combine_first() 기본 개념combine_first()는 두 Series(DataFrame 포함)를 결합하여, 앞쪽 값이 결측치(NaN)일 경우 뒤쪽 값으로 채워주는 메서드입니다. 즉, "왼쪽 값을 우선 사용하고, 비어 있으면 오른쪽 값으로 보충"하는 방식으로 작동합니다. 예제 코드import pandas as pddf = pd.DataFrame({ '고객명': ..
Pandas에서 데이터를 다룰 때 결측치가 섞여있는 데이터를 정수형으로 변경해 사용하고자 할 때 어떤 방법을 사용하는게 좋을까요? 저는 평소 .astype(int)를 쓰다가 숫자가 크면 제대로 변환이 되지 않아 .astype('int64')를 사용했었는데요. 결측치가 있을 때는 오류가 나서 알아보고 .astype('Int64')를 사용해서 해결했습니다. 이 글에서는 세 가지 타입의 차이와 함께 사용하면서 제가 만났던 오류를 피하는 팁을 간단한 예제를 통해 정리해보겠습니다. int, int64, Int64 비교 — 결측치 수용import pandas as pd# 예제1values = [None, 2, 7]df = pd.DataFrame(values, columns=['values']) # 1-1. int..
Python에서 리스트에 새로운 요소를 추가할 때 자주 사용하는 방법이 바로 append, extend, 그리고 + 연산입니다. 평소에는 append를 습관적으로 쓰다가 원치 않는 결과가 나와서 당황한 적이 있는데요. 이번 기회에 세 가지 방법의 차이를 정리해보았습니다. 기본 개념append: 리스트의 끝에 객체 하나를 통째로 추가합니다.extend: 리스트의 끝에 반복 가능한(iterable) 객체의 요소들을 풀어서 각각 추가합니다.+ 연산: 두 리스트를 이어 붙여 새로운 리스트를 반환합니다. 원본 리스트는 그대로 두고, 합쳐진 결과만 반환합니다.예제 코드a = ['a']add_element = ['b', 'c']# append 사용a.append(add_element)print("append 결과:..