KATA#113

codataffee·2024년 8월 19일
0

CODEKATA

목록 보기
113/114
post-thumbnail

WHAT IS KATA?

KATA는 기술과 기술 향상에 초점을 맞춘 코드 챌린지입니다.
일부는 프로그래밍 기본 사항을 교육하는 반면 다른 일부는 복잡한 문제 해결에 중점을 둡니다.

이 용어는 The Pragmatic Programmer 라는 책의 공동 저자인 Dave Thomas 가
무술에서 일본의 카타 개념을 인정하면서 처음 만들어졌습니다.
Dave의 개념 버전은 코드 카타를 프로그래머가
연습과 반복을 통해 기술을 연마하는 데 도움이 되는 프로그래밍 연습으로 정의합니다.


리트코드 - 판다스 30일 문제


- PYTHON


✔️ 문제 #1: Rearrange Products Table

✔️ 제출 코드

✔️ 코드 분석

import pandas as pd

def rearrange_products_table(products: pd.DataFrame) -> pd.DataFrame:
    pivot_prod = products.melt(id_vars=['product_id'], var_name='store', value_name='price')
    pivot_prod = pivot_prod.dropna(subset=['price'])
    pivot_prod.reset_index(drop=True, inplace=True)
    return pivot_prod

✔️ CHECK POINT

  • PANDAS

    • .melt() 메서드를 활용하여 데이터 재구조화 (PIVOT)

      ' melt() '
      # 'id_vars'로 기준이 되는 열 지정 ('product_id')
      # 'var_name'으로 새로운 열 이름 지정 ('store')
      # 'value_name'으로 값이 되는 열 이름 지정 ('price')
      pivot_prod = products.melt(id_vars=['product_id'], var_name='store', value_name='price')
      
    • .dropna() 메서드로 결측값 ( null ) 제거

      ' dropna() '
      # subset = ['price'] (price 열에서 결측값이 있는 행 제거)
      pivot_prod = df_melted.dropna(subset=['price'])
      
    • .reset_index() 메서드로 인덱스 초기화

      ' reset_index() '
      # drop = True (기존 인덱스 삭제), inplace = True (원본 데이터 대체)
      pivot_prod.reset_index(drop=True, inplace=True)
      


profile
커피 좋아하는 데이터 꿈나무

0개의 댓글

관련 채용 정보