numpy

2. NUMPY(2)

미스터 한뺑 2022. 8. 24. 19:11
반응형

**내적(dot product)

  • 두 벡터의 각요소끼리 곱한 합
  • 결과값은 스칼라가 나온다.

 

a라는 변수와 b라는 변수가 있다. 여기서 행끼리 곱해서 나온 값을 더해 주는 것이다 .

줄여서 a @  b이라 쓴다

 

 

**행렬곱

  • 2차원 공간에서 내적을 한다.
  • 앞에 행렬의 열개수와 뒤에 행렬의 행개수가 동일해야한다.
  • 연산결과의 shape 앞에 행렬의 행개수와 뒤에 행렬의 열개수가 나온다

 

행렬곱의 예시를 들어보면 

x 변수 객체가 4행 3렬 이다

w 변수 객체는 1행 3렬이다. 여기서 내적을 하면 

앞에 열개수를 가져와야하니 4개를 가져왔고 뒤에 행개수를 가져와야하니 1행을 가져와서 

1행 4열 값이 나왔다.

 

**배열만들기

 

 

 

 

파이썬 range 함수랑 같다 ! 

다만  리스트로 반환 되는 것이 아니라 array로 반환한다.

 

 

 

**numpy 집계함수

 

 

집계함수도 파이썬과 같이 사용할수 있다 !

 

 

 

**배열 조건연산

 

데이터를 bool변형으로 값을 바꿔 볼수있다 

위 조건은 과목이 80 이상인 인덱스만  True로 반환한다는 조건이다 .

 

 

 

 

where의 구조는

np.where( 조건 ,조건이 참일때 바뀌는 값, 아니면 바뀌는 값) 이다 

위 사진을 보면 점수가 80이상 일때 80점 넘는 점수는 1로 바뀌고 80이하는 0으로 바꾼다는 의미이다.

 

 

 

**np.clip

 

 

여기서 집중할 필요가 있다 .

np.cilp()구조는 (변수,최소값,최대값) 이다 .

여기서 이 문장이 구현되는 것을 알아야한다 .

위 사진을 보면 최소값이 1이다. 이것은 모든 값이 1보다 작으면 1로 바꾼다는 의미이다.

그리고 최대값 자리가 3이다 . 이것은 모든 값이 3보다 크면 3으로 꾼다는 의미이다 .

그리고 나온값을 중첩이 돼 새로운 값이 나온다 .

 

 

 

**무한, 결측치

 

 

무한를 의미하는건 inf

 

결측치를 의미하는건 nan

 

**만약에 전처리과정에서 무한, 결측치를 나타났으면 어떻게 할까?!?!?!

 

 

 

무한을 찾고싶을때는 isinf()메소드를 사용하고

결측치를 찾고 싶을때는 innan() 메소드를 사용한다.

 

 

그러나 ~! 두개 따로 찾기 너무 귀찮은것,,,,, 한번에 두 값을 찾을 수 있는 방법이 없나 ,,,,,,

바로 있지 !!!!!!

 

isfinite()메소드를 사용하면 무한,결측치를 찾을수 있다 !!!

 

 

**numpy random

  • rand
    • 0~1 사이에 랜덤값 반환

 

 

 

  • randn
    • 평균이 0이고 분산1인 정규분포 형태의 랜덤값들을 반환

 

 

 

  • randint
    • 랜덤한 정수 반환
    • start~ end -1
    • 세번째 인자는 크기

 

 

 

 

  • shuffle
    • 반환값이 없고 배열 자체 섞는다.

 

 

  • choise
    • 지정한 개수 만큼 랜덤하게 선택해서 추출

 

로또....자동...번호추첨기 ,,,?!

여기서 중복값이 안나오게 하려면 뒤에 replace =false를 써주면 중복이 안된다.

 

 

 

**axis 이해하기

 

코드해석을 하면 

50~90까지 의 숫자를 랜덤으로 2열 1행으로 출력하겠다라는 말이다.

여기서 232줄을 보면 집계함수를 쓴 걸 알수있다 .

그렇다 데이터를 집계함수를 쓰고 싶을때 사용 하는 용도로 쓰인다는 걸 알수있다 .

여기서 axis는 2차 차원에선 0과 1이 쓰이는데 0은 행 방향으로 더한다는 의미이다

만약에 axis = 1이면 열 방향으로 더한다는 의미이다

반응형

'numpy' 카테고리의 다른 글

1. NUMPY(1)  (0) 2022.08.24