Loading...
2021. 12. 1. 23:59

Numpy 기초 8편

1. boolean index boolean array를 넣어 array를 추출함 condition을 넣어 condition에 맞는 array를 추출하는 방식 2. fancy index index array를 넣어 해당 index에 맞는 값들을 추출 index는 int로 선언해야 index로 인식함 3. data in&out loadtxt로 텍스트 파일을 열고 savetxt로 저장함 astype()은 원하는 type으로 바꿔줌 np.save를 통해 array를 pickle형태로 저장하고 다시 불러올 수 있음 array를 처음부터 다시 만들기 까다로울 때, 예상치 못한 상황이 발생할 때를 대비해서 저장해놓고 사용하면 편할 수 있음

2021. 12. 1. 23:42

Numpy 기초 7편

1. np.where() 1-1) np.where(,(True일때 출력),(False일때 출력)) 1-2) np.where() condition이 True인 index만을 차례대로 array로 반환 2. isnan & isfinite np.isnan() NaN인 값을 찾아 True, False array로 반환 np.isfinite() finite인 값 찾아 True, False array로 반환 3. argmax,argmin array내 최댓값 index 반환 >> argmax array내 최솟값 index 반환 >> argmin sorting한 index 반환 >>argsort a[np.argmin(a)] 하면 최솟값을 출력할 수 있음 비슷하게 a[a.argsort()] 하면 sorting한 arra..

2021. 11. 30. 18:47

Numpy 기초 6편

1. time array 연산의 시간을 비교 일반적으로 for loop가 가장 느리고 다음으로 list comprehension이 빠르고 numpy가 가장 빠르다 numpy는 c로 구현하여 연산속도의 이점을 확보하고 dynamic typing을 포기 대용량 계산에서 numpy가 이득 concatenate같은 단순 할당연산에는 속도 이점이 없음 위에서부터 for loop연산,list comprehension연산,numpy 연산 numpy가 압도적으로 빠르다 2. comparison 단순히 array를 scalar와 비교하면 array 원소 모두에 대해 comparison하여 boolean array로 반환 3. any,all np.any() array내 모든 원소에 대해 하나라도 True이면 True np..

2021. 11. 29. 21:27

Numpy 기초 5편

1. element wise operation numpy는 단순 list와는 다르게 기본적으로 array끼리 사칙연산을 지원함 기본적으로는 *,+,-는 대응하는 원소끼리 연산함 dot product는 일반적인 행렬곱으로 a.dot(b) , a@b transpose는 a.T , a.transpose() 2. broadcasting shape가 다른 배열 간 연산도 지원함 scalar가 matrix의 모든 원소에 대응하여 연산함

2021. 11. 29. 20:57

Numpy 기초 4편

1. operation 기본적인 수학연산 지원 sum,mean,median,var,std 등등 지원 median 지원이 인상적 np.exp(), np.sqrt(), … 등 지수함수와 제곱근도 지원 표준편차는 std()로 구할 수 있고 median같은 경우는 a.median()이 아니라 np.median(a) 식으로 구해야 에러가 안나는듯 2. axis 연산 실행에서 기준이 되는 축 ndarray의 shape가 (a,b,c,d,e,.....)이면 a는 axis=0 b는 axis=1 c는 axis=2, d는 axis=3, e는 axis=4,..... 그림2에서 (3,4) array의 원소 합 sum()을 구한건데 axis=1이 shape에서 4를 나타내니까 원소 4개 있는 방향으로 sum을 함 그림3에서 (..

2021. 11. 28. 20:18

Numpy 기초 3편

1. np.arange(n) np.arange(n)은 0~n-1까지 한 행으로 array 생성 list의 range는 step size에 floating point가 불가능하나 arange()는 가능 보통 reshape와 같이 사용함 arange로 array를 만들고 원하는 shape로 바꾸기 위해 reshape를 사용 2. np.zeros() & np.ones() np.zeros()는 0으로 가득 찬 ndarray np.ones()는 1로 가득찬 ndarray 3. np.empty() np.empty()는 비어있는 ndarray를 생성한다 그런데 일반적으로 배열을 생성할때는 메모리 공간을 싹 비우고(initialization) 잡는데 np.empty는 그냥 메모리 공간을 잡는다. 그래서 잡은 공간에 들..