반응형

머신러닝 7

Pandas (1) - Pandas 와 Series 다루기

Pandas Pandas의 소개 Pandas는 앞으로 가장 자주 살펴볼 라이브러리이다. 고수준의 자료구조와 파이썬에서 빠르고 쉽게 사용할 수 있는 데이터 분석 도구를 포함하고 있다. Pandas는 다른 산술 계산 도구인 NumPy와 SciPy, 분석 라이브러리인 statsmodels와 scikit-learn, 시각화 도구인 amtplotlib과 함께 사용하는 경우가 흔하다. Pandas는 for 문을 사용하지 않고 데이터를 처리한다거나 배열 기반의 함수를 제공하는 등 NumPy의 배열 기반 뎨산 스타일을 많이 차용했다. Pandas가 NumPy의 스타일을 많이 차용했지만 가장 큰 차이점은 Pandas는 표 형식의 데이터나 다양한 형태의 데이터를 다루는데 초점을 맞춰서 설계했다는 것이다. NumPy는 단일..

머신러닝/pandas 2021.10.09

NumPy의 기초(5)

집한 관련 함수 NumPy는 1차원 ndarray를 위한 몇가지 기본적인 집합 연산을 제공한다. 아마도 가장 자주 사용하는 함수는 배열 내에서 중복된 원소를 제거하고 남은 원소를 정렬된 형태로 반환하는 np.unique일 것이다. in : names = np.array(['Bob','Joe','Will','Bob','Will','Joe','Joe']) np.unique(names) out : array(['Bob', 'Joe', 'Will'], dtype=' 0, 1, -1) walk = steps.cumsum() in : walk.min() out : -..

머신러닝/numpy 2021.10.06

NumPy의 기초(4)

배열을 이용한 배열지향 프로그래밍 NumPy 배열을 사용하면 반복문을 작성하지 않고 간결한 배열 연산을 사용해 많은 종류의 데이터 처리 작업을 할 수 있다. 배열 연산을 사용해서 반복문을 명시적으로 제거하는 기법을 흔히 벡터화라고 부르는데 일반적으로 벡터화된 배열에 대한 산술 연산은 순수 파이썬 연산에 비해 2~3배에서 많게는 수십,수백 배까지 빠르다. 처음으로 다룰 브로드캐스팅은 아주 강력한 벡터 연산 방법이다. 예를 들어 값이 놓여 있는 그리드에 sqrt(x^2 + y^2)을 계산을 한다고 하자. np.meshgrid 함수는 두 개의 1차원 배열을 받아서 가능한 모든(x,y)짝을 만들 수 있는 2차원 배열 두개를 반환한다. in : points = np.arange(-5,5,0.01) # -5부터 4..

머신러닝/numpy 2021.10.06

NumPy의 기초(3)

배열 전치와 축 바꾸기 배열 전치는 데이터를 복사하지 않고 데이터의 모양이 바뀐 뷰를 반환하는 특별한 기능이다. ndarray는 transpose 메서드와 T라는 이름의 특수한 속성을 가진다. arr = np.arange(15).reshape((3,5)) arr array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]]) arr.T array([[ 0, 5, 10], [ 1, 6, 11], [ 2, 7, 12], [ 3, 8, 13], [ 4, 9, 14]]) arr = np.random.randn(6,3) arr array([[-0.99938261, -0.02133965, -0.88106858], [ 0.5428376 , -0.29822089, ..

머신러닝/numpy 2021.09.09

NumPy의 기초(2)

색인과 슬라이싱 기초 데이터의 부분집합이나 개별 요소를 선택하기 위한 수많은 방법이 존재한다. 1차원 배열은 단순한데, 표면적으로는 파이썬의 리스트와 유사하게 동작한다. arr = np.arange(10) arr array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) arr[5] 5 arr[5:8] array([5, 6, 7]) #배열에 스칼라값을 대입하면 12가 선택 영역 전체로 전파(브로드 캐스팅)되는 것을 확인이 가능하다. arr[5:8] = 12 arr array([ 0, 1, 2, 3, 4, 12, 12, 12, 8, 9]) arr_s = arr[5:8] arr_s[1] = 12345 arr array([ 0, 1, 2, 3, 4, 12, 12345, 12, 8, 9]) 리스트와 중..

머신러닝/numpy 2021.09.09

NumPy의 기초(1)

NumPy NumPy의 정의 NumPy는 Numerical Python의 줄임말로, 파이썬에서 산술 계산을 위한 가장 중요한 필수 패키지중 하나이다. 과학 계산을 위한 대부분의 패키지는 NumPy의 배열 객체를 데이터 교환을 위한 공통 언어처럼 사용된다. 효율적인 차원 배열인 ndarray는 빠른 배열 계산과 유연한 브로드캐스팅 기능을 제공한다. 반목문을 작성할 필요 없이 전체 데이터 배열을 빠르게 계산할 수 있는 표준 수학 함수 배열 데이터를 디스크에 쓰거나 읽을 수 있는 도구와 메모리에 적재된 파일을 다루는 도구 선형대수, 난수 생성기, 푸리에 변환등 가능 C, C++, 포트란으로 작성한 코드를 연결할 우 있는 C API 대부분의 데이터 분석 애플리케이션에서 중요하다고 생각되는 기능이다. 벡터 배열 ..

머신러닝/numpy 2021.09.09

머신러닝에 필요한 라이브러리

모듈 정리 Numpy(Numerical Python) 파이썬 산술 계산의 주춧돌 같은 라이브러리 자료구조, 자료구조, 알고리즘 산술 데이터를 다루는 대부분의 과학 계산 애플리케이션에 필요로 하는 라이브러리를 제공한다. 빠르고 효율적인 다차원 배열 객채 ndarray 배열 원소를 다루거나 배열 간의 수학 계산을 수행하는 함수 디스크로부터 배열 기반의 데이터를 읽거나 쓸 수 있는 도구 선형대수 계산, 푸리에 변환, 난수 생성기 파이썬 확장과 C,C++ 코드에서 NumPy의 자료구조에 접근하고 계산 기능을 사용할 수 있도록 해주는 C API 고속 배열 처리 외에도 NumPy는 데이터 분석 알고리즘에 사용할 데이터 컨테이너의 역할을 한다. 수치 데이터라면 NumPy는 파이썬 내장 자료구조보다 훨씬 효율적인 방법..

머신러닝 2021.09.09
반응형