본문 바로가기
TIL

본 캠프 29일차 TIL

by Data 학습자 2024. 7. 23.

오늘 배운 것

mode() :

mode() 함수: 는 데이터프레임이나 시리즈에서 가장 빈번하게 발생하는 값을 반환합니다. 즉, 최빈값(최다빈도값)을 구하는 함수입니다. 여러 최빈값이 있을 경우, 모두 반환합니다.

 

import pandas as pd

# 예제 시리즈 생성
data = pd.Series([1, 2, 2, 3, 4, 4, 4, 5])

# 최빈값 구하기
mode_value = data.mode()
print(mode_value)

 

위 코드에서는 시리즈에서 가장 빈번하게 발생하는 값, 즉 최빈값을 구합니다. 결과는 4가 됩니다.

데이터프레임에서 사용

import pandas as pd

# 예제 데이터프레임 생성
data = {
    'A': [1, 2, 2, 3],
    'B': [4, 4, 4, 5],
    'C': [7, 8, 9, 9]
}
df = pd.DataFrame(data)

# 각 열의 최빈값 구하기
mode_values = df.mode()
print(mode_values)

 

mode() 함수의 주요 옵션

  • axis: 계산할 축을 지정합니다. 0이면 각 열(column)의 최빈값, 1이면 각 행(row)의 최빈값을 계산합니다. 기본값은 0입니다.
  • numeric_only: 숫자 데이터만 고려할지 여부를 지정합니다. 기본값은 False입니다.

활용한 부분

df_shops = pd.read_csv('./shops.csv')

most_floor_value = df_shops['층정보'].mode()[0]

df_shops['층정보'].fillna(most_floor_value, inplace=True)

df_shops.dropna(axis=1, inplace=True)

df_shops.head(70)

 

결과값

 

 

startswith

 

startswith 메서드는 파이썬 문자열에서 특정 문자열로 시작하는지 여부를 확인하는 데 사용되는 메서드입니다. 이 메서드는 문자열이 지정된 접두사로 시작하면 True를, 그렇지 않으면 False를 반환합니다.

 

str.startswith(prefix[, start[, end]])

 

매개변수

  • prefix: 확인할 접두사 문자열입니다. 문자열이나 튜플 형태로 여러 접두사를 지정할 수도 있습니다.
  • start (선택): 검색을 시작할 문자열의 위치를 지정합니다. 기본값은 0입니다.
  • end (선택): 검색을 종료할 문자열의 위치를 지정합니다. 기본값은 문자열의 끝입니다.

반환 값

  • 문자열이 지정된 접두사로 시작하면 True, 그렇지 않으면 False를 반환합니다.

활용한 코드

def convert_floor(value):
    if isinstance(value, str):
        value = value.replace('지하', 'B').replace('층', '').replace('지', 'B1')
        if value.startswith('B'):
            return -int(value[1:])
        else:
            return int(value)
    return value

df_shops['층정보'] = df_shops['층정보'].apply(convert_floor)

df_shops.head(70)

 

결과값

'TIL' 카테고리의 다른 글

본 캠프 31일차 TIL  (0) 2024.07.24
본 캠프 30일차 TIL  (0) 2024.07.23
본 캠프 28일차 TIL  (1) 2024.07.22
본 캠프 27일차 TIL  (0) 2024.07.21
본 캠프 26일차 TIL  (0) 2024.07.19