본문 바로가기

TEAMLAB10

[TEAMLAB] 3 - 6. numpy - operation functions 이번 시간에는 numpy의 계산함수에 대해 알아보도록 하겠다. 먼저 sum은 원소들의 합을 구하는 함수이다. list에서도 list 안의 값을 더하는 역할을 해주었다. 스칼라 값의 결과를 반환한다. 다른 opertion들을 살펴보기 전에, numpy array에서 중요한 축에 대해 알아보도록 하겠다 python에서는 shape의 하나하나의 크기를 axis라고 한다. shape에서 가장 앞에 나오는 것이 axis 0에 해당한다. 예를 들어, vector에서는 유일한 하나의 값이 axis 0이겠고, matrix에서는 행에 해당하는 것이 axis 0이고, 열이 axis 1에 해당한다. axis = 1에 대해서 sum을 한다는 것은 vector에 대해서 sum을 한다는 뜻이므로 결과는 위에서 확인할 수 있듯이 .. 2020. 1. 20.
[TEAMLAB] 3 - 5. Create Function 이번 시간에는 array를 만드는 함수에 대해서 알아보도록 하겠다. 처음에 배울 것은 arange로 array를 지정해놓은 range에 따라서 만드는 것이다. list의 경우에서는 list(range(10))의 형태로 0~9의 list를 만들었었다. numpy의 경우에도 마찬가지로 np.arange(10)의 형태로 0~9까지의 vector를 만들 수 있다. list처럼 numpy도 시작, 끝, step으로 범위를 지정할 수 있고, list와 달리 floating 포인트로 step을 표현할 수 있다는 것이 특징이다. numpy 배열을 tolist 함수를 통해서 list로 표현할 수도 있다. zeros는 0으로 가득찬 ndarray를 만드는 것인데 shape라고 키워드를 써도 되도 안 써도 된다. 데이터 타.. 2020. 1. 20.
[TEAMLAB] 3 - 4. Indexing & Slicing 저번 시간에 이어서 numpy의 indexing과 slicing에 대해서 배우도록 하겠다. Indexing은 matrix를 기준으로 했을 때 앞은 행, 뒤는 열로 표현하는 것이다. list에서 indexing은 [1][2]의 형태이지만 numpy에서는 [1, 2] 이런 형태이다. index가 넘어가면 index error가 뜨게 된다. 다음으로 slicing에 대해 알아보겠다. 부분을 잘라내는 것이다. list와 달리 행과 열의 부분을 나눌 수 있다. 여기서 중요한 점은 1:3이라면 1~2까지라는 것이다. 처음 시작은 포함하지만 끝은 포함하지 않는다는 것을 주의하자. 만약 위와 같이 행 범위를 지정하지 않았을 경우에는 전체 범위로 판단한다. 위와 같이 , 없이 단 하나만 나온 경우에는 맨 앞, 즉 여기서.. 2020. 1. 20.
[TEAMLAB] 3 -3 . numpy - handling shape 저번 시간에 이어서 이번에는 numpy로 shape 다루는 법을 알아보도록 하겠다. shape은 이전 시간에 설명했듯이 dimension이 어떻게 구성되어 있는가에 대한 정보였다. 예를 들어, 2 x 4의 matrix를 8개의 원소를 가진 vector로 다시 reshape할 수 있다. 위의 예를 보자면 처음에는 2 x 4 matrix를 만든 다음 reshape해서 8개의 벡터로 만들었다. element 개수가 같게, size가 같게 할 수 있다. reshape을 할 때는 array의 size가 같게 해야한다. -1은 그 부분은 몇개가 되든 상관 없고 전체 사이즈에 맞춰서 만들라는 뜻이다. reshape를 할 때 크기가 맞지 않다면 오류가 난다. flatten은 1 dimensional array, vec.. 2020. 1. 20.