빅데이터 QAQC_3기/빅데이터 QAQC_3기 TIL

TIL_250924

usungusung 2025. 9. 24. 20:55

Today I learned

 

1. 코드카타 level 1

1) 음양 더하기

def solution(absolutes, signs):
    answer = 0 # 모든 숫자의 합을 담을 변수 answer를 0으로 시작
    for absolute, sign in zip(absolutes, signs): #zip은 absolutes와 signs를 짝지어 하나씩 꺼냄
        if sign == True: # sign이 True다 -> 양수 더하기
            answer += absolute
        elif sign == False: # sign이 False다 -> 음수 빼기
            answer -= absolute
    return answer

 

2) 핸드폰 번호 가리기

def solution(phone_number):
    answer = len(phone_number) # 입력받은 전화번호 문자열의 길이를 구함
    number = phone_number[-4:] # 뒷 4자리만 추출함
    return "*"*(answer-4) + number # 전화번호 전체 길이에서 4를 뺀 만큼 *를 반복해서 만듬

 

3) 없는 숫자 더하기

def solution(numbers):
    total = 0 #숫자의 합을 담을 함수를 0부터 시작
    for i in range (0,10): # 0부터 9까지 반복할 i
        if i not in numbers: # 반복중인 i가 입력한 변수 numbers에 없으면
            total += i # total에 i를 더함
    return total

 

4) 제일 작은 수 제거하기

def solution(arr): #arr란 변수를 입력할거임
    if len(arr) <= 1: # arr의 길이가 1 이하라면
        return [-1] # -1 을 반환해주세용
   
    min_arr = min(arr) #arr 내의 최소 숫자 min_arr
    arr.remove(min_arr) # min_arr을 arr 리스트에서 없애주세요
    return arr

 

2. (라이브세션) [데이터 전처리 & 시각화] Pandas 기초

1) 판다스란?

- Python Data Analysis Library 로, 파이썬에서 데이터 조작과 분석을 위한 가장 핵심적인 라이브러리

- 테이블 형태의 데이터를 다룰 수 있음

- 결측치 처리, 데이터 변환, 집계 등 전처리 작업의 핵심 도구

- 시각화 및 머신러닝으로 연결

- 패키지: 코드 뭉치를 하나의 포장지로 포장 해 놓은 형태

- pandas 사용 선언

import pandas as pd

 

2) 데이터 구조 이해하기

- Series (1차원 데이터)

    하나의 컬럼으로 이루어진 1차원 배열

    index와 value로 구성

    리스트나 배열과 비슷하지만 강력한 기능 제공

ex)

# 리스트로부터 Series 생성
ages = pd.Series([25, 30, 35, 28, 32])
print("Series 예제:")
print(ages)

 

- Dataframe

    여러 개의 컬럼으로 이루어진 2차원 테이블

    행과 열로 구성된 엑셀과 유사

    여러 개의 Series가 모여서 만들어진 구조

ex)

# 딕셔너리로부터 DataFrame 생성
data = {
    'name': ['김철수', '이영희', '박민수', '최지은'],
    'age': [25, 30, 35, 28],
    'city': ['서울', '부산', '대구', '인천']
}

df = pd.DataFrame(data)
print("DataFrame 예제:")
print(df)

 

3) 데이터 불러우기 및 기본 탐색

- CSV 파일 불러오기

    기본 구조

df = pd.read_csv('파일경로/파일명.csv')

 

    옵션 추가

df = pd.read_csv('data.csv',
                 encoding='utf-8',# 한글 인코딩
                 index_col=0,# 첫 번째 컬럼을 인덱스로
                 header=0,# 첫 번째 행을 컬럼명으로
                 sep=',',# 구분자 지정
                 na_values=['N/A', ''])# 결측치로 처리할 값들

 

- Excel 파일 불러오기

    기본 구조

df = pd.read_excel('파일경로/파일명.xlsx')

 

    특정 시트만 읽을 때

df = pd.read_excel('파일명.xlsx', sheet_name='Sheet1')

 

4) 속성과 메소드

- 속성(Attribute)

    객체가 가지고 있는 정보나 특성, () 없이 사용

    데이터의 현재 상태나 특성을 보여줌

ex)

index: index

columns: 컬럼 명

values: numpy array 형식의 데이터 값

dtype: column별 데이터 타입

T: DataFrame을 전치

shape: 데이터 형

 

- 메소드(Method)

    객체가 수행할 수 있는 동작이나 기능을 나타냄

    () 로 사용하며 데이터에 대해 특정 작업 수행

ex)

조회 및 탐색: head(), tail(), describe(), info()

데이터 선택 및 필터링: loc[], iloc[], query(), filter()

정렬 및 그룹화: sort_value(), sort_index(), groupby()

결합 및 병합: concat(), merge(), join()

결측치처리: insull(), notnull(), fillna(), dropna()

통계 및 계산: mean(), median(), sum(), corr()

변형 및 재구성: pivot(), pivot_table(), stack(), unstack()

시계열 데이터 처리: resample(), asfreq(), rolling()

 

5) 데이터 변경 및 생성

 

3. 데이터 전처리 & 시각화 1주차

1) 데이터 분석가는 누구인가?

- 사업적 관점에서 : 매출, 비용, 가격, 대외적 이슈

- 사용자, 제품 관점에서 : 유입/전환, 결제율, 이탈율

- BI 관점에서 : DL, DW, DM, ETL Visualization -> 가장 엔지니어같은 분석가

 

2) 데이터 분석가의 유형

- 비즈니스 분석가: 비즈니스 문제를 이해하고 해결하기 위해 데이터를 분석/업ㅁ 프로세스 개선, 비즈니스 모델 분석, 요구 사항 관리 등 수행

 - 프로덕트 분석가: 제품 및 서비스의 성과 평가 및 개선 목적으로 데이터를 분석, 사용자 행동 및 제품 성능과 관련된 데이터를 분석하여 제품 개선에 기여/A/B 테스트, 사용자 경로 분석 등을 담당

 - BI 분석가: 기업의 비즈니스 인텔리전스 플랫폼과 도구를 사용하여 데이터 시각화 및 보고서 작성, 기업 내부 데이터를 시각화 및 의사결정에 필요한 정보 제공, BI 도구(Tableau, power BI 등)을 사용하여 대시보드 구축, 데이터 시각화 및 보고서 작성 담당

- 데이터 분석가: 정형 데이터를 분석하여 기업의 의사 결정을 지원, 데이터를 추출 및 정제하여 보고서 및 시각화를 생성, SQL, Excel, 데이터 시각화 등을 활용

- 데이터 사이언티스트: 데이터를 활용하여 예측, 패턴 발견, 복잡한 분석을 수행하여 문제를 해결함 / 통계, 머신러닝, 딥러닝 등의 기술을 사용하여 데이터를 분석하고 모델을 구축함/데이터 수집, 전처리, 모델링 평가 및 해석을 포함한 A to Z 데이터 분석 작업을 수행

 

3) 데이터 전처리

- 데이터 전처리: 내가 원하는 데이터를 보기 위해 하는 모든 활동

- 정형데이터: 열과 행이 명확하게 존재함

- 비정형데이터: 이미지, 목소리나 오디오 등 정형화되지 않은 데이터

'빅데이터 QAQC_3기 > 빅데이터 QAQC_3기 TIL' 카테고리의 다른 글

TIL_250926  (0) 2025.09.26
TIL_250925  (0) 2025.09.25
TIL_250923  (0) 2025.09.23
TIL_250922  (2) 2025.09.22
TIL_250919  (1) 2025.09.19