본문 바로가기
카테고리 없음

2024.01.10 빅데이터 분석가 양성과정 8일차 노트

by Choose Me 2024. 1. 10.
SMALL

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 

https://bit.ly/41x8FOX

 

[기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가?

안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅데이터 분석 양성과정을 시작합니다! [취업과 창업]고용노동부와 한국품질재단 & 안동대학교가 함께하는 2024년 K-Digital Training(1,000

crosefrog.tistory.com

https://bit.ly/3NIinbu

 

[취업과 창업]고용노동부와 한국품질재단 & 안동대학교가 함께하는 2024년 K-Digital Training(1,000만원

안녕하세요. 저는 졸업을 1년 남기고 이력서, 자소서, 포트폴리오 및 미니프로젝트와 최종프로젝트를 수행하는 한국품질재단의 빅데이터 분석가 양성과정에 참가하게 되었습니다. 오늘날 세상

crosefrog.tistory.com

 

2. 기업맞춤형 빅데이터 분석가 양성과정 노트목록

 https://crosefrog.tistory.com/entry/20231228-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-1%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2023.12.28 빅데이터 분석가 양성과정 1일차 노트

오늘은 기업맞춤형 빅데이터 분석가 오리엔테이션이 있었습니다. 1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인

crosefrog.tistory.com

https://crosefrog.tistory.com/entry/20240102-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-2%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2024.01.02 빅데이터 분석가 양성과정 2일차 노트

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가? 안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅

crosefrog.tistory.com

https://crosefrog.tistory.com/entry/20240103-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-3%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2024.01.03 빅데이터 분석가 양성과정 3일차 노트

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가? 안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅

crosefrog.tistory.com

https://crosefrog.tistory.com/entry/20210104-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-4%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2024.01.04 빅데이터 분석가 양성과정 4일차 노트

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가? 안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅

crosefrog.tistory.com

https://crosefrog.tistory.com/entry/20240105-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-5%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2024.01.05 빅데이터 분석가 양성과정 5일차 노트

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가? 안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅

crosefrog.tistory.com

https://crosefrog.tistory.com/entry/20240108-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-6%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2024.01.08 빅데이터 분석가 양성과정 6일차 노트

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가? 안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅

crosefrog.tistory.com

https://crosefrog.tistory.com/entry/20240109-%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0-%EB%B6%84%EC%84%9D%EA%B0%80-%EC%96%91%EC%84%B1%EA%B3%BC%EC%A0%95-7%EC%9D%BC%EC%B0%A8-%EB%85%B8%ED%8A%B8

 

2024.01.09 빅데이터 분석가 양성과정 7일차 노트

1. 기업맞춤형 빅데이터 분석가 양성과정 소개 https://bit.ly/41x8FOX [기업맞춤형 빅데이터 분석가 양성과정] 선수과정이란 무엇인가? 안녕하세요! 저는 12월 28일부터 한국품질재단의 기업맞춤형 빅

crosefrog.tistory.com

3. Chepter 06 예외_처리 & 연습문제_배포용.ipynb

Ch06_예외_처리.ipynb
0.07MB
Ch06_예외_처리_연습문제_배포용.ipynb
0.04MB

4. Notion 빅데이터 분석가 양성과정 대시보드

https://shaded-chair-f39.notion.site/d1191ac35d7c4f09b2fd0bdc9a91debc?pvs=4

 

빅데이터 분석가 양성과정 대시보드 | Built with Notion

템플릿의 아이콘들은 https://notionicons.website 사이트를 참조했습니다

shaded-chair-f39.notion.site

5. Naver 블로그 포스팅

https://blog.naver.com/PostView.naver?blogId=moment_by_moment&logNo=223318532441&redirect=Dlog

 

뜨듯미지근하다면, 불처럼 타올라보자. (인생을 구체적으로 살아보자.)

이것도 하고 싶고, 저것도 하고 싶다면? 커피, 담배, 안경이 조선에 처음 들어왔을 때는 굉장히 고가의 제...

blog.naver.com

https://blog.naver.com/PostView.naver?blogId=moment_by_moment&logNo=223318563884&redirect=Dlog

 

사람 사는 것은 대부분 비슷하다.

인생을 살다가 만나는 사람들 오늘 아침에 일찍 일어나서 침상을 정리하고 샤워를 하고 아침식사를 하고 공...

blog.naver.com

6. Google Colaboratory Notebook

https://colab.research.google.com/drive/155Ayelf2RTW79KvN6Mu6ZKTo5TifnhP5#scrollTo=Y6_xZFH3yKXH

 

Google Colaboratory Notebook

Run, share, and edit Python notebooks

colab.research.google.com

https://colab.research.google.com/drive/1MkqmigEayZtjhLbRjzT29gSyuOUVR3sI#scrollTo=b_bgvXHK8_9A

 

Google Colaboratory Notebook

Run, share, and edit Python notebooks

colab.research.google.com

7. 필기노트

담배가 조선말기에 들어왔을 때, 굉장히 비쌌을 것이다.

안경, 커피 등 처음엔 굉장히 비쌌다.

어른앞에서 안경을 쓰거나, 같이 담배를 피우거나, 모자를 쓰고 있으면 예의없는 것으로 여겼었다.

  • 분위기가 많이 변했다.

민소매가 예전에는 민망한 패션이었지만 지금은 아무렇지도 않다.

4장 반복문

: 리스트, 딕셔너리, for문, while문

Ch06 예외 처리

  • 구문 오류(syntax error): 파이썬 코드 자체의 문법 에러

→ 프로그램 실행 전에 발생하는 오류

예외 상황, 사건이 발생하게 되었다.

#이런 error말고 답이 틀리는 경우: 로직 에러

→ 이런 에러를 찾는 것은 어렵다.

치명적인 에러는 잘 처리해야 한다.

  • 치명적 예외(exception) 사건
  1. NameError: 이름 에러
  2. IndexError: 인덱스의 범위
  • 에러가 생기면 종료되도록 구성되어 있다.

#예외 사건을 어떻게 잘 처리할 것인가?

첫차는 굉장히 신중하게 관리한다. 정수관리

  • 가급적이면 명확하게 얘기하도록 하자.

예외 처리의 본질: 혹시나 해서 발생할 거 같은 상황을 미리 방지하는 것.

예외 처리 방법

  1. 조건문(If문)을 사용하는 방법

사전에 어떤 상황인지 고민해보자.

  • 눈이 오는 날은, 차가 많이 미끄러질 수 있는 상황이다.

⇒ 눈이 오기 전에 미리 상황 파악을 하고 가자. (미연 방지)

  1. try ~ except ~를 사용하는 방법
try:
  # 예외가 발생할 가능성이 있는 코드
except:
  # 예외가 발생했을 때 실행할 코드
try:
  number = int(input("정수 입력: "))
  print('원의 반지름 :', number )
  print('원의 둘레 :', 2*3.14*number )
  print('원의 면적 :', 3.14*number*number)
except:
  print('위 과정에서 예외가 발생했습니다.')

예외 발생

positive_int = int(input('양의 정수를 입력 하세요 : ') )

d = 10 // positive_int
s = 10 % positive_int

print(f'입력하신 수, (positive_int)로 10을 나누었을 때 몫은 {d}이고 나머지는 {s}입니다.')

어학연수 갈 생각이 원래 없었다.

(인생은 원래 예상치 못한 사건이 발생한다.)

큰 수를 저장할수록 비트 수가 늘어난다.

‘무한대’ 라는 숫자를 보관하려면 무한비트가 필요하므로 저장할 수가 없다.

ValueError

TypeError

SyntaxError

ZeroDivisionError

positive_int = int(input('양의 정수를 입력 하세요 : ') )

try:
  d = 10 // positive_int
  s = 10 % positive_int
  print(f'입력하신 수, (positive_int)로 10을 나누었을 때 몫은 {d}이고 나머지는 {s}입니다.')
except:
  print('예외 발생!')
while True:
  try:
    number = int(input('정수 입력: '))
  except:
    print('정수를 입력하지 않으셨습니다.')
  else:
    print('원의 반지름

예외 처리 try ~ except ~ else ~ 사용방법

try:
  # 예외가 발생할 가능성이 있는 코드
except:
  # 예외가 발생했을 때 실행할 코드
else:
  # 예외가 발생하지 않았을 때 실행할 코드
try:
   number = int(input("정수 입력: "))
except:
  print('정수를 입력하지 않았습니다.')
else:
  print('원의 반지름 :',number )
  print('원의 둘레 :', 2*3.14*number )
  print('원의 면적 :', 3.14* number* number)
while True:
  try:
    number = int(input('정수 입력: '))
  except:
    print('정수를 입력하지 않으셨습니다.')
  else:
    print('원의 반지름 :', number)
    print('원의 둘레 : ', 2*3.14*number)
    print('원의 면적 : ', 3.14 * number*number)
    break

대학 생활 동안, 하나에 미쳐서 열심히 해보길 바라는 마음이다.

연애든, 뭐든 하나에 미쳐서 파고 들어보자.

⇒ 열정적으로 살자.

하기 싫은 것은 없다. 그렇다고 하고 싶은 것도 없다.

목표가 없었다. (인생에 기복은 늘 있는 법이다.)

지금 내가 뜨뜻미지근하다면,

한번쯤은 어떤 분야에 타오르는 삶을 살아보자.

(쫄지말고 해보자.)

예외 처리 try ~ except ~ else ~ finally 사용 방법

try:
  # 예외가 발생할 가능성이 있는 코드
except:
  # 예외가 발생했을 때 실행되어야 하는 코드
else:
  # 예외가 발생하지 않았을 때 실행되어야 하는 코드
finally:
  # 예외 발생 여부와 관계 없이 무조건 실행되어하는 코드
try:
   number = int(input("정수 입력: "))
except:
  print('정수를 입력하지 않았습니다.')
else:
  print('원의 반지름 :',number )
  print('원의 둘레 :', 2*3.14*number )
  print('원의 면적 :', 3.14* number* number)
finally:
  print('좋은 하루 보내세요.')
  • finally는 무조건 실행된다.

정리: try는 혼자 쓰이지 않는다.

try + except

try + except + else

try + except + finally

try + except + else + finally

try + finally

  • finally에 대한 오해
try:
  file = open('info.txt', 'w')
  # 여러 가지 업무 처리
  file.close()          # 해당 파일을 닫습니다.

except:
  print('파일 처리에서 오류 발생')

print('파일이 제대로 닫혔는지 확인하기')
print('file.closed :', file.closed)
  • 인위적으로 예외를 발생시키는 경우
try:
  file = open('info.txt', 'w')
  # 예외 발생 상황을 만들기 위해,
  # 일부러 'ValueError'를 발생시키겠습니다.
  raise ValueError

  file.close()
except:
  print('파일 처리에서 오류 발생')

print('파일이 제대로 닫혔는지 확인')
print('file.closed :', file.closed)
try:
  file = open('info.txt', 'w')
  # 파일을 사용하는 작업을 진행 중에
  # 예외 상황 발생

  # 예외 발생 상황을 만들기 위해,
  # 일부러 'ValueError'를 발생시키겠습니다.
  raise ValueError

except:
  print('파일 처리에서 오류 발생')
finally:
  file.close()          # 해당 파일을 닫습니다.

print('파일이 제대로 닫혔는지 확인하기')
print('file.closed :', file.closed)
  • file close()를 꼭 finally안에 둬야 하는 건 아니다.

→ finally는 필요에 따라 요령껏 사용하면 된다.

finally구문에 대해 조금 더

  • try 구문 내부에서 return 키워드를 사용하는 경우

→ try 구문 중간에서 return되어도 finally 구문을 무조건 실행됨

(함수가 try 구문에서 return을 원하는 상황에서 제어권을 호출한 쪽에 넘긴다고 해도 finally 구문은 실행이 됨. (finally 구문에서 파일을 닫을 수 있음)

  • 반복문과 함께 finally를 사용하는 경우

→ 반복문에서 break로 빠져 나가는 경우에도 finally 구문을 실행한 후 반복 문을 탈출하게 됨.

print('프로그램이 시작되었습니다.')

while True:
  try:
    print('try 구문이 실행되었습니다.')
    break
    print('try 구문의 break 키워드 뒤입니다.')
  except:
    print('except 구문이 싱행되었습니다.')
  finally:
    print('finally 구문이 실행되었습니다.')

print('프로그램이 종료되었습니다.')
=>
프로그램이 시작되었습니다.
try 구문이 실행되었습니다.
finally 구문이 실행되었습니다.
프로그램이 종료되었습니다.

목표를 달성하기 위한 방법들을 구체적으로 생각해보자.

꿈꾸고 계획을 할 때, 시간을 정해보자.

예를 들어, 차를 바꾸고 싶다고 해보자.

→ 돈이 생겨야 한다. (저절로 생기지 않는다.)

구체적으로, 언제까지 이뤄낼 것인지 자주 생각해보자.

  • 본격적으로 이야기를 시작하기 전에

→ 현실에서 어떤 사건(예외 사건, 예외 상황 등)이 발생하면 ‘누가, 언제, 어디서, …’라는 정보가 존재

→ 프로그래밍에서도 예외(사건)가 발생하면 관련된 정보가 생성되어 예외 객체(exception object)에 저장됨.

  • 예외 객체(exception object)는 다음과 같은 형태로 사용함.
try:
  예외가 발생할 가능성이 있는 구문
except 예외의 종류 as 예외 객체를 활용할 변수 이름:
  예외가 발생했을 때 실행할 구문

예외의 종류가 참 많다. (다양하다.)

예외를 다루는 아저씨들의 주인이 exception이다.

try:
  예외가 발생할 가능성이 있는 구문
except 예외의 종류 as 예외 객체를 활용할 변수 이름:
  예외가 발생했을 때 실행할 구문
try:
  number = int(input('정수 입력 >'))
  print('원의 반지름 :', number)
  print('원의 둘레 :', 2*3.14*number)
  print('원의 면적 :', 3.14*number*number)

except Exception as exception:
  # 예외 객체를 출력해 봅니다.
  print('type(exception) :', type(exception))
  print('exception :', exception)
=>
정수 입력 > 7세
type(exception) : <class 'ValueError>
exception : invalid literal for int() with base 10: '7세'
  • 여러 가지 예외가 발생할 수 있는 상황: ValueError

int(’일) → ValueError를 발생시켰습니다.

lst = [1,2,3,4,5]

try:
  idx = int(input('양의 정수 입력(범위는 0부터 {})>'.format(len(lst)-1)))
  print('{}번째 요소 : {}'.format(idx, lst[idx]))

except Exception as error:
  print('type(error) :', type(error))
  print('error :', error)
=>
양의 정수 입력(뻠위는 0부터 4)>5
type(exception) : <class 'IndexError'>
error : invaid literal for int() with base 10: '일'
  • 여러 가지 예외가 발생할 수 있는 상황: IndexError
lst = [1,2,3,4,5]

try:
  idx = int( input('양의 정수 입력(범위는 0부터 {})>'.format(len(lst)-1)))
  print('{}번째 요소 : {}'.format(idx, lst[idx]))

except Exception as exception:
  print('type(Exception) :', type(exception))
  print('exception :', exception)
=>
양의 정수 입력(범위는 0부터 4)> 5
type(Exception) : <class 'IndexError'>
exception : list index out of range
  • 예외를 구분하여 처리할 수 있음
try:
  예외가 발생할 수 있는 구문
except 예외의 종류A:
  예외A가 발생했을 때 실행할 구문
except 예외의 종류B:
  예외B가 발생했을 때 실행할 구문
except 예외의 종류C:
  예외C가 발생했을 때 실해할 구문

깨끗하게 청소된 환경과 지저분한 환경은 큰 차이가 있다.

(책상 위를 깨끗하게 정리해야 한다.)

공간이 사람에게 주는 영향이 상당하다.

→ 삶의 태도가 변한다.

아래 코드의 경우 TypeError에 대한 예외 처리를 만들어 두지 않았기 때문에

프로그램(코드)이 ‘죽었다!’

a = 2
a + '입니다'

⇒ ⇒ TypeError에 대한 예외 처리를 만들어 두지 않았기 때문에 프로그램(코드)이 ‘죽었다!’

lst = [1, 2, 3, 4, 5]

try:
  idx = int( input('양의 정수 입력(범위는 0부터 {})> '.format(len(lst)-1)))
  print('{}번째 요소 : {}'.format(idx, lst[idx]))

except ValueError as exception:
  print('정수를 입력해 주세요.')
  print('exception :', exception)
except IndexError as exception:
  print('리스트의 인덱스 범위를 벗어났습니다.')
  print('exception :', exception)
  • raise 구문

→ 프로그램이 실행 도중 강제 종료되는 것을 막기 위해 예외는 꼭 처리되어야 함

→ 하지만 프로그램을 개발하는 동안에는 정말 의도적으로 예외 상황을 만들기도 함

→ ‘아직 구현하지 않은 부분이 있는데 까먹을 수 있으니 확실하게 문제(에러)가 생기게 만들자’

⇒ 그래서 나중에 “이 부분을 코딩해야 한다는 것을 기억하게” 또는 “이 상태로 프로그램이 더 진행되면 프로그램이 이 시점에 종료하는 것보다 더 큰 문제를 일으킬 수 있으니 여기서 강제 종료 시키자’ 등의 이유에서 의도적으로 예외를 발생시키게 된다.

6장 연습문제: 앞에서 한 내용들을 포함해서 출제된다.


사물이라는 표현이 사전적 의미랑 다를지 모르지만, 세상만물이 객체라 보면 된다.

유형이든, 무형이든 떠올릴 수 있는 것들은 객체이다.

사물을 특징짓는 것들이 있고, 기능 관련된 것들이 있다.

 

사물을 바라볼 때, 어떤 사물의 속성을 두 가지 측면에서 바라보고자 한다.

 

- 속성(attribute) = 변수

- 매서드(method) = 함수

이 2가지를 가지고 정의를 한다.

 

클래스: 종자, 분류

객체 설계

Ex) Tiguan + Iguana = Tiguan

 

내가 신이라면, 다리는 4개, 신진대사, 물 속에서 생존가능 등등..의 구상을 하게 된다.

class Tiguan():
  color = 'black'

class Tiguan():
  color = 'black'
noname = Tiguan()  #이름이 noname이야?
print(noname.color)
print(type(noname))

=> 
black
<class '__main__.Tiguan'>
class Tiguan():
  color = 'black'  # 속성(attribute, 변수)
  
  def run(self):   # 메서드(method, 함수)
    print('꼼지락~꼼지락~')
tiguan = Tiguan()  # 이름이 tiguan

print(tiguan.color)
tiguan.run()
print(type(tiguan))
=>
black
꼼지락~꼼지락~
<class'__main__.Tiguan'>

속성 => 변수로 저장

기능 => 함수로 저장

멤버 함수라고 얘기하기도 한다.

 

특수목적으로 함수명을 지정하기도 한다. (독특하게 이름을 지음)

pass: 일단 보류라는 의미

 

설계도대로 만드는 중인 개체

-> 이름이라는 속성을 가져보자.

 

init함수는 먼저 실행한다는 의미

 

self 함수는 처음엔 자동으로 생성되어서 자동 호출된다.

self는 만들어지고 있는 Tiguan 자체를 의미한다.

처음에는 이름이 없으나, 만들어지게 된다.

 

class Tiguan():
  def __init__(self,name):
    self.name = name

 

클래스는 어떤 객체를 만들려고 하는 설계도 도면, 구상도이다라고 생각하면 매끄럽다.

객체는 세상만물을 어떻게 정의하고 표현할지 생각해 낸 것이 속성과 기능이 있다는 것이다.

예외 에러 처리할 때도 에러처리할 수 있는 기능을 부여해준 것이다.

=> 공식용어: 객체, 객체를 만드는 것은 클래스이다.

 

반응형
LIST