본문 바로가기
  • 콩's 코딩노트
Python/Python 문법

26 . 라이브러리( Library ) - 라이브러리(Libraray)란? / 랜덤 (Random), seed 값

by Cong_S 2022. 4. 27.

라이브러리란? 

 

파이썬에서의 라이브러리란 보통 함수들을 모아놓은 것을 말한다.

구체적으로 알아보면 어떤 용도에 맞는 자주 사용하는 함수들을 모아 모듈, 패키지로 만들어 둔 것이다.

 

한 번 만들어 놓으면 언제든 import 로 불러와 사용할 수 있고,

다른 사람이 만들어둔 라이브러리를 가져오는 것도 공유하는 것도 가능하다.

 

 

----------------------------------------------------------------

 

 

import random 으로 가져오는 랜덤 라이브러리는

어떠한 수(정수, 실수)를 랜덤으로 부여하는 함수들이다.

이를 "난수를 생성한다." 고 말한다.

 

 

정수로 난수를 생성하는 randint( ) 함수. 파라미터 값에는 원하는 범위를 두 가지 수로 정한다.

 

실수로 난수를 생성하는 uniform( )함수. 사용방법은 위  randint( ) 함수와 같다.

 

랜덤함수의 값을 일정한 패턴의 값으로 고정시키는 seed( )함수

seed 값을 정하고 난수 생성을 하면 나오는 값들의 결과가 고정된다.

 

이러한 이유로 회사가 서비스 운영을 할 때에는 보안상의 이유로 seed 값을 공개하지 않는 경우가 일반적이다.

 

다만 머신러닝같은 분야에서 어떠한 프로그램이 정말 맞는 연산인지 교차검증하기 위한 목적으로 공유되기도 한다.

 

정규분포란 평균값에 데이터들이 더 많이 몰려있는 형태의 분포로 가우시안 분포라고도 한다.

파라미터에는 평균값과 표준편차값을 입력한다.

normal_variate 라는 리스트 안에 for 반복문을 통해 1000개의 정규분포 데이터를 만들어 입력한 모습이다.

 

pyplot과 같은 라이브러리를 통해 정규분포 데이터를 히스토그램화시켜 볼 수도 있다.

 

choice( ) 함수로 이미 리스트와 집합 등에 저장된 데이터를 랜덤으로 뽑을 수도 있다.

 

sample 함수를 통해 저장된 데이터 여러 개를 샘플로 뽑을 수 있다

또한 shuffle 함수를 이용하면 현재 원본 리스트의 순서를 무작위로 섞을 수 있다.

 

원본 리스트의 순서를 그대로 두고 무작위로 샘플을 뽑고 싶다면 다음과 같은 식을 작성하면 된다.

댓글