본문 바로가기
728x90

우공이산250

Inplace=True 옵션을 썼는데, 데이터 변경이 안되는 경우 drop, fillna, replace 등 python pandas 함수를 쓰면서 Inplace=True 옵션을 자주 사용하였는데, 이 옵션이 동작하지 않는 경우가 있어서 공유합니다. 우선 아래 예제를 보겠습니다. 1. Inplace=True 옵션이 동작하지 않는 경우 이 예제는 Age와 Income 열의 값이 0인 경우 각 컬럼의 평균값으로 대체하는 예제입니다. import pandas as pd # 샘플 데이터프레임 생성 data = {'Name': ['John', 'Alice', 'Bob', 'Emily'], 'Age': [25, 30, 35, 0], 'Income':[100,200,300,0], 'City': ['New York', 'Paris', 'London', 'Sydney'], 'Gende.. 2023. 6. 11.
[빅데이터분석기사 실기][작업형1] Shift로 데이터 이동하기 shift 함수는 pandas 라이브러리에서 제공되는 함수로, 데이터 프레임의 열을 특정 방향으로 이동시키는 기능을 수행합니다. 이 함수를 사용하면 열의 값들이 한 칸씩 앞이나 뒤로 이동하게 됩니다. shift 함수는 다음과 같은 형식으로 사용됩니다: df['이동된 열'] = df['기존 열'].shift(periods=n) 여기서 periods=n은 이동할 칸 수를 지정하는 매개변수입니다. n이 양수인 경우 열의 값을 뒤로 이동시키고, 음수인 경우 앞으로 이동시킵니다. 이동된 결과는 새로운 열로 추가되며, 이동되는 과정에서 가장 첫 번째 값은 결측치로 채워집니다. 아래 예시를 보겠습니다. import pandas as pd # Create a sample DataFrame data = {'A': [1,.. 2023. 6. 9.
Label Encoidng 시 ValueError: y contains previously unseen labels:가 발생할 때 Label Encoding 시 "ValueError: y contains previously unseen labels:"가 발생할 때가 있습니다. 학습데이터에 fit을 하고, 테스트데이터에 transform을 했을 때, 테스트데이터에 학습데이터에 없는 범주값이 존재할 때 발생합니다. 초보자 분들의 경우에는 학습데이터와 테스트데이터 모두 fit_transform을 하는 경우가 있기도 하고, 학습데이터와 테스트 데이터를 합쳐서 fit 하고, 학습데이터와 테스트 데이터를 transform 해주기도 하지만, 원칙적으로 학습데이터와 테스트 데이터는 독립적이어야 하므로 실무적으로 권장되는 방법은 아닙니다.(Data Leakage 문제가 생기며, 대회 등에서는 탈락 사유가 됩니다.) LabelEncoder.class.. 2023. 6. 8.
철인왕후 - 오랜만에 많이 웃었다 넷플릭스 추천 콘텐츠에 몇 달째 떠있어서 결국 보게 되었습니다. 사랑의 불시착에서 인상깊은 연기를 보여줬던 김정현과, 만능짤로 유명한 신혜선이 출연하는 드라마인데, 두 주연의 연기가 다채롭고, 조연들의 감초 연기가 너무 웃겨서 매일 저녁 즐겁게 보았습니다. 특히 김소용의 역할을 맡은 신혜선의 연기가 인상적이었는데요. - 김소용에 빙의된 남자 장봉환 - 김소용과 동화되면서 정체성에 혼란을 느끼는 장봉환 - 김소용 부캐 이생망 - 회상신에 나오는 빙의 전 김소용 - 빙의가 풀렸지만, 성격이 변한 김소용 다섯 가지 역할을 하는 신혜선에 감탄했습니다. 특히 마지막에 총 맞고 빙의 풀리면서 원래 김소용으로 돌아오는 신에서 소름이 쫙 올라왔습니다. (감탄인지, 닭살인지.. 구별이 잘 안 되네요.) 20화 길게 가는.. 2023. 6. 7.
[빅데이터분석기사 실기][작업형1] iloc와 loc를 이용한 데이터프레임 접근 iloc와 loc는 데이터프레임을 다루는 데 있어 기본이 되는 방법입니다. iloc와 loc에 대해 알기 전에 슬라이싱을 알아야 하니, 혹시 슬라이싱에 익숙하지 않으면 아래 글을 먼저 봐주세요. 2023.06.17 - [데이터분석과 AI/빅데이터 분석기사] - [빅데이터분석기사 실기][작업형1] 슬라이싱 1. loc와 iloc의 차이 - 행 loc는 index에 직접 접근하며, iloc는 index의 순서를 따릅니다. import pandas as pd # 데이터 생성 data = { 'Car': ['Corolla', 'Civic', 'Accord', 'Sonata', 'Optima'], 'Manufacturer': ['Toyota', 'Honda', 'Honda', 'Hyundai', 'Kia'], '.. 2023. 6. 6.
[빅데이터분석기사 실기][작업형1] 그룹화와 정렬 + 멀티인덱싱 groupby 함수는 데이터를 집계하는 함수입니다. 비슷하게 pivot_table을 사용할 수도 있습니다. sort_values는 DataFrame 또는 Series를 정렬하는 함수입니다. DataFrame을 정렬할 때는 by 파라미터에 정렬기준이 되는 변수명을 입력하고, Series를 정렬할 때는 변수명을 입력하지 않습니다. ascending=True가 기본값으로 오름차순이고, ascending=False는 내림차순입니다. 1. Code: DataFrame 정렬 import pandas as pd # 데이터 생성 data = { 'Car': ['Corolla', 'Civic', 'Accord', 'Sonata', 'Optima'], 'Manufacturer': ['Toyota', 'Honda', 'Ho.. 2023. 6. 6.
[빅데이터분석기사 실기][작업형1] 상관관계 구하기 상관계수는 두 변수 간의 선형 관계의 강도와 방향을 측정하는 통계량입니다. 상관계수는 -1에서 1 사이의 값을 가지며, 값의 절대값이 클수록 강한 선형 관계를 나타냅니다. 상관계수가 1에 가까울수록 양의 선형 관계를, -1에 가까울수록 음의 선형 관계를 나타냅니다. 0에 가까울수록 선형 관계가 약하거나 없음을 의미합니다. 아래 코드에서 상관관계가 높은 변수를 찾을 때는 단순히 상관계수의 크고 작음이 아니라, 상관계수의 절대값을 기준으로 강한 상관관계를 가지는지 판단해야 합니다. import pandas as pd from sklearn.datasets import load_boston # Boston House Prices 데이터셋 로드 data = load_boston() df = pd.DataFram.. 2023. 5. 28.
[빅데이터분석기사 실기][작업형1] 표준화와 정규화 표준화(Standardization)와 정규화(Normalization)는 데이터 전처리 기법으로, 데이터를 일정한 기준에 맞추어 조정하는 방법입니다. 표준화(Standardization) 표준화는 데이터의 평균을 0으로, 표준편차를 1로 만들어 데이터를 정규분포(평균 0, 표준편차 1)에 맞게 변환하는 방법입니다. 표준화를 수행하면 데이터의 범위를 넓히거나 축소하지 않고, 데이터의 상대적인 위치를 파악할 수 있습니다. 주로 데이터가 정규분포를 따를 때 사용됩니다. 정규화(Normalization) 정규화는 데이터의 범위를 0과 1 사이로 변환하여 데이터의 상대적인 크기를 비교할 수 있도록 만드는 방법입니다. 정규화는 최소값과 최댓값을 이용하여 데이터를 변환하며, 최솟값은 0, 최댓값은 1이 되도록 스케.. 2023. 5. 27.
[빅데이터분석기사 실기][작업형1] 누적합 계산 및 결측치 채우기(cumsum, bfill) 누적합(Cumulative Sum)은 데이터의 원소들을 순차적으로 더해가며 누적된 합을 계산하는 연산입니다. 이전까지의 모든 데이터 값을 현재 데이터 값과 함께 더하여 누적된 결과를 생성합니다. 누적합은 데이터의 추이와 누적적인 변화를 파악하는 데 유용하며, 데이터의 누적적인 변화를 시각화하거나 특정 시점까지의 누적된 값을 계산하는 데 사용될 수 있습니다. 누적합은 다양한 분야에서 사용됩니다. 다음과 같이 몇 가지 예시가 있습니다. 금융 분야: 주식 가격, 지수 등의 시계열 데이터에서 누적합을 계산하여 총 수익률, 누적 수익 등을 파악할 수 있습니다. 판매 분야: 매출 데이터에서 일별, 월별, 연도별 누적 매출을 계산하여 총 매출액 추이를 확인할 수 있습니다. 생산 분야: 생산량이나 생산 비용 데이터에서.. 2023. 5. 27.
728x90