[빅데이터분석기사 실기][작업형1] 값을 대체하기 (replace)
이번에는 pandas의 replace 함수를 이용하여 값을 대체해 보겠습니다. 딕셔너리를 이용해서 값을 여러개 대체할 수도 있고, 단일 값을 변경하는 경우에는 변경전, 후 값만 입력하여 변경도 가능합니다. import pandas as pd # 예제 데이터프레임 생성 data = {'A': [1, 2, 3, 4, 5], 'B': ['apple', 'banana', 'apple', 'cherry', 'banana']} df = pd.DataFrame(data) # 'B' 컬럼의 값을 변경하기 전 출력 print("Original DataFrame:") print(df) # 'B' 컬럼의 값을 변경하여 새로운 데이터프레임 생성 df_replaced = df.replace({'apple': 'orange', ..
2023. 5. 26.
[빅데이터분석기사 실기][작업형1] 분위수 구하고 값을 대체하기 (np.quantile(), np.clip())
분위수(Quantiles)는 데이터를 일정한 비율로 나누는 기준점을 의미합니다. 주어진 데이터의 분포를 파악하고, 데이터의 상대적 위치를 알아보기 위해 사용됩니다. 일반적으로 백분위수(Percentiles)를 많이 사용합니다. 백분위수는 데이터를 100개의 동등한 부분으로 나눈 것으로, 데이터의 분포를 1부터 100까지의 백분위로 표현할 수 있습니다. 그리고 이런 분위수 기준으로 상, 하위값을 분위수로 대체하는 방식으로 이상치를 제거하기도 합니다. 아래는 이에 대한 간단한 예제입니다. import numpy as np # 예제 데이터 배열 생성 data = np.array([10, 20, 30, 40, 45, 50, 55, 60, 70, 80, 90, 100]) # 상위 75% 값을 구하는 예제 uppe..
2023. 5. 26.
[빅데이터분석기사 실기][작업형1] 결측치 제거 및 그룹화
앞서 결측치를 대체하는 방법을 알아보았습니다. 이번에는 dropna()를 사용하여 결측치가 존재하는 행을 삭제하는 방법입니다. 그리고, groupby로 데이터를 그룹화하고, index가 2개 이상인 경우에 값을 선택하는 방법까지 알아보겠습니다. import pandas as pd #샘플 데이터 만들기 df = pd.DataFrame({'value': [1, 2, None, 4, 5, 6], 'ind1': ['a', 'a', 'b', 'b', 'c', 'c'], 'ind2': [1, 2, 1, 2, 1, 2]}) #결측치 확인 df.isna().sum() #결측치 제거 df[~df['value'].isna()] #groupby로 멀티인덱스 만들기 df_grp=df.groupby(['ind1','ind2']..
2023. 5. 24.