STORY
MinJ is_

2022년/[멋쟁이 사자처럼] AI 회고

[1주차] 추가 공부

KMinJis 2022. 9. 22. 17:46

# 조은 강사님과 함께하는 수업💖

# 1주차 동안 진행한 3일의 수업 중 더 공부해보고싶거나 복습해보고 싶었던 내용 정리입니다.

 

더보기

▶Day 1

데이터 파이프 라인

  • 데이터 파이프란?

 - 다양한 데이터 소스에서 원시 데이터를 수집한 다음 분석을 위해 데이터 레이크 또는 데이터 웨어하우스와 같은 데이터 저장소로 이전하는 방법

 - Data의 추출(extracting), 변경(transforming), 결합(combining), 검증(validating) 그리고 적재(loading)하는 과정들을 자동화 하는 것

  • 데이터 파이프 특징

 - 모든 종류의 스키마의 데이터를 수용해야한다.

 - 여러 데이터 스트림을 한번에 처리해야 한다

 - 파일의 데이터는 작은 단위로 들어와서 병렬로 처리된다.

  • 데이터 파이프 라인 종류
  1. ETL (Extract, Transform, Load) : 데이터를 추출(E) ≫ 변환(T) ≫ 적재(L) 순으로 데이터를 처리하는 과정
  2. ELT (Extract, Load, Transform) : 데이터를 추출(E) ≫ 적재(L) ≫변환(T) 순으로 데이터를 처리하는 과정
  •  ETL과 ELT의 차이점
  1. ETL : 데이터 스테이징 단계가 소스와 데이터 웨어 하우스 사이에 있음
    ELT : 데이터 스테이징이 필요 X / 데이터 웨어하우스를 활용하여 기본 변환을 수행
  2. ETL은 데이터 웨어 하우스에 로드하기 전, 중요 보안 데이터를 처리하여 개인정보 보호 규정을 준수 지원할 수 있다.
  3. ETL : 정교한 데이터 변환을 수행할 수 있음 / ELT보다 비용 효율적

 

 

더보기

▶Day 2

enumerate()

  • enumerate(iterable, start=0)
    - start의 인덱스부터 인덱스와 해당하는 값을 반환
    - iterable는 시퀀스, 이터레이터 또는 이터레이션을 지원하는 다른 객체 
       * iterator에 대한 설명 링크 : https://docs.python.org/ko/3/glossary.html#term-iterator

 

용어집 — Python 3.10.7 문서

같은 형의 두 인자를 수반하는 연산이 일어나는 동안, 한 형의 인스턴스를 다른 형으로 묵시적으로 변환하는 것. 예를 들어, int(3.15)는 실수를 정수 3으로 변환합니다. 하지만, 3+4.5 에서, 각 인자

docs.python.org

 

더보기

▶Day 3

◆ DataFrame 행과 열 가져오기

  1. col(열) 데이터 가져오기
    - 1개 col : df[“컬럼명”]
    - 2개 이상 col : df[[“컬럼명1”,“컬럼명2”,“컬럼명3”]]
  2. row(행) 데이터 가져오기
    - `loc`: 행을 기준으로 데이터프레임을 가져옴, 라벨이나 boolen array로.
    - `iloc`: 행의 인덱스를 기준으로 데이터프레임을 가져옴
    - 1개 행 : df.loc[인덱스이름]    or   df.iloc[인덱스]  
    - 2개 이상 행 : df.loc[[“인덱스이름1”,“인덱스이름2”,“인덱스이름3”]] or df.iloc[[인덱스번호1,인덱스번호2,인덱스번호3]]
  3. row, col로 데이터 가져오기
    - loc[행, 열]
      (ex) df.loc[0,'약품명'] / df.loc[[0,1,2],["약품명","가격"]]
    - iloc[행,열]
      (ex) df.iloc[0,0] / df.iloc[[0,1,2],[0,1]]
    - ' : ' 사용시  df.loc[0:2,[“약품명”,“가격”]] / df.iloc[0:2,:2]

 

◆ Series 접근자(Accerssors)

  • 사용 이유 : Python class의 method에 접근하기 위해
  • 특징 : series type에만 적용 가능 / 데이터 type마다 다르게 적용 가능하게 만들어짐
  • 예시 : df[“컬럼명”].str    →   df[“컬럼명”] series를 문자열로 다룰 수 있음
  • 사용 예시 
    (1) df["약품명"].str.contains("vita")]
        → df[“약품명”] series 안에 vita라는 값이 있는지 bool 타입으로 true, false 반환
    (2) df["약품명"].str.upper() → df[“약품명”] series 안에 소문자를 모두 대문자로 변경
  • 참고 공식 문서 : https://pandas.pydata.org/docs/reference/series.html#api-series-str
 

random_state

  • random seed 값
  • 사용 이유 : 수행시마다 동일한 random 값을 받아오기 위함
  • 특징 : 무슨 값이던 상관은 없다
  • 42를 보통 많이 사용

9/22 TIL
*사실(Fact) : 수업 중 어려웠었던 Seaborn에 대해서 같이 복습했다. Seaborn에 있는 다양한 함수들과 사용법 및 관련 개념들에 대해 학습하는 시간이었다.
*느낌(Feeling) : 이렇게 직접 공식문서, 각종 블로그 등을 참고해서 공부를 하니 더 이해를 할 수 있었다. 수업 외에 추가 공부를 해야할 필요성을 느꼈다.
*교훈(Finding) : 다른 팀 분들의 복습 내용을 보니 다들 열심히 하고, 멋있는 분들이 많다고 생각했다. 나도 많이 분발해야겠다고 다짐하게 되었다.

 

 

 

 

 

 

'2022년 > [멋쟁이 사자처럼] AI 회고' 카테고리의 다른 글

[10주차] 추가공부  (1) 2022.11.24
[9주차] 추가공부  (0) 2022.11.17
[8주차] 추가공부  (0) 2022.11.10
[7주차] 추가공부  (0) 2022.11.03
[2주차] 추가 공부  (1) 2022.09.29