본문 바로가기

전체 글

[Python] 데이터 시각화: 개념,plt.plot(x,y), plt.show(), plt.savefig() Tidy Data - 깔끔한 데이터. 이하는 깔끔한 데이터의 특징 - 변수는 컬럼이다 - 데이터가 행으로 되어있다. - 만약 여러개의 표가 존재한다면, 적어도 하나 이상의 컬럼이 공유되어야 한다. - 이러한 타입의 데이터만이 차트로 그릴수 있다. ㄴ 판다스 데이터프레임으로 작업을 하면, 차트를 그릴 수 있다. 데이터 시각화: - Matplotlib 라이브러리 ㄴ 파이썬에서 수학적 확장 넘파이 라이브러리를 활용한 플로팅 라이브러리. ㄴ 넘파이나 판다스에서 사용되는 자료구조를 쉽게 시각화 가능 - seaborn 라이브러리 ㄴ Matplotlin을 기반으로 다양한 색상 테마와 통계용 차트 등의 기능을 추가한 시각화 패키지로, 유익한 통계 그래픽을 그리기 위한 고급 인터페이스 제공 -> 함수 파라미터에 뭐만 쓰.. 더보기
[Python] 판다스, 데이터프레임 합치기: concat(), merge() Concatenating and merging - concat() 괄호 안에다가, 리스트를 넣는다. 두개 이상의 데이터가 필요하기 때문 - 가로로 해놓는 건, axis 값을 주면 된다. import pandas as pd df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3'], 'C': ['C0', 'C1', 'C2', 'C3'], 'D': ['D0', 'D1', 'D2', 'D3']}, index=[0, 1, 2, 3]) df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'], 'B': ['B4', 'B5', 'B6', 'B7'], 'C': ['C4', 'C5', 'C6', 'C7.. 더보기
[Python] 넘파이 Boolean 연산: & | Boolean 연산: & | 중요한 내용! - 넘파이에서 데이터 억세스에 사용하는 '그리고(and)'는, 사용하지 않고, &로 사용한다. ㄴ and는 조건문(if)에서 사용하는 것. - 넘파이에서는 '또는(or)'을 "|"기호를 사용한다. - 비교 대상은 괄호로 묶어준다. - ex) X의 데이터 중에서 50보다 크고 80보다 작은 데이터만 가져오시오 - ex) X의 데이터 중에서, 30보다 작거나 90보다 큰 데이터만 가져오시오. 실습: Q) X = 5 x 5 ndarray 를 만드세요.정수 1 부터 25 까지 순차적으로 들어있습니다. Y = Boolean indexing 을 이용해서 홀수만 뽑아서 배열로 만듭니다 A) X= np.arange(1,25+1).reshape(5,5) Y = [(X%2==1)] 더보기
[Python] 넘파이 슬라이싱, 중복제거, 연산: [ : ], copy(), unique() 넘파이 슬라이싱: 1. nparray[ start : end ] 2. ndarray[ start: ] 3. ndarray[ : end] - 행렬의 데이터 억세스는 무조건 콤마, X[ : 2+1, :2+1] ex) 두번째 행만 가져오세요. X[1, :] - 콜론은 안 채워도 되고, 냅둬도 되고 X[1, ] ex) 세번째 컬럼을 가져오시오 X[:,2] ex) 첫번째 컬럼과 네번째 컬럼만 가져오시오 X[:, [0,3]] ex) 첫번째 행과 세번째 행만 가져온다. X[[0,2],2:] 넘파이 슬라이싱 주의: .copy() - .copy함수를 이용하면, 카피해라. - 메모리에 따로 저장된다. - 원본과 공유되지 않는다.서로 다른 영역이다. 중복된 것 제거한 값만 리스트로 가져오기: np.unique() 중요한 내.. 더보기
[Python] 넘파이 어세싱, 삭제, 추가: [ ], delete(), append(), insert() 1차원 어세싱 x[-1] 다차원 어세싱 - 콤마 왼쪽은 행, 오른쪽은 열 X[0,2] 넘파이 항목 삭제: np.delete() - 괄호 안에 첫번째 파라미터는 변수를 쓰고, 두번째는 인덱스를 쓴다. - 이렇게만 적으면 화면에는 삭제된 것처럼 보이지만, 실제 메모리에는 반영이 되지 않는다. - 메모리에도 저장하려면 변수로 또 저장해야한다. 화면에 보여지는 것은 메모리에 저장되지 않는다. np.delete(넘파이 변수, 인덱스) - 삭제할 인덱스가 2개 이상이면, 리스트에 담아서 처리 행렬에서 행/열 삭제: np.delete(넘파이 변수, 인덱스, axis = ) 해당 요소만 딱 집어서 삭제: np.delete(넘파이 변수, 인덱스, axis = ) 넘파이 항목 끝에서 추가: np.append(변수명, 데이.. 더보기
[Python] 넘파이 조건에 부합하는 데이터/인덱스 위치 찾기: argmax(), argmin() 넘파이 안에 조건에 부합하는 데이터 찾기 ex) X에 70보다 큰 데이터는 몇개가 있나요? - 컴퓨터에서는 True를 1로, False를 0으로 계산하기 때문에, 총합을 계산하면, 총 개수가 나온다. - (X>70).sum() ex) X의 데이터 중에서 70보다 큰 데이터만 가져오시오. 최대값/ 최소값 인덱스 위치 찾기 - ex) 최대값은 어디에 있나요? = 최대값이 들어있는 곳의 인덱스가 무엇? - 넘파이 변수. argmax() - 같은 원리로, 최소값이 들어있는 곳의 인덱스가 무엇? - 넘파이 변수. argmin() ex) 각 행별로 최대값의 인덱스를 구하시오. X.argmax(1) ex) 각 열별로 최소값의 인덱스를 구하시오 X.argmin(axis=0) 더보기
[Python] 넘파이: 랜덤값으로 채워진 배열 만들기: randint(), random(), normal() import random random.random() - 랜덤 모듈을 불러와서, 안에 있는 랜덤 함수를 사용하는 것. - 결과 값은 0과 1사이에 있는 값을 하나만 랜덤하게 불러온다. - 실수(实数)로 불러옴. random.randint(1,6) - 랜덤하게 정수로 불러오고 싶을때 사용하는 함수. - random.randint(범위 시작 숫자, 범위 끝의 숫자, size = shape) - 랜덤 모듈에서의 randint함수를 불러오는 것. - 결과 값을 하나만 뽑아준다. - 넘파이에서는 랜덤으로 수를 채우는, 데이터을 제공한다. - 넘파이 안에 있는 랜덤 - np.random.random(데이터 갯수) - 넘파이에서는 랜덤으로 수를 채우는, 행렬도 제공한다. - np.random.random(행렬) - .. 더보기
[Python] 넘파이 1차원 배열 여러차원으로 만들기: reshape() 1차원 배열을 여러차원으로 만들기: reshape() - 넘파이에서 엄청 중요한 내용! - 인공지능을 다룰 때, 많이 사용되는 reshape() - ex) x(소문자)의 쉐입과 Y의 쉐입을 비교해보세요.( x는 벡터, Y는 행렬) - 여러단계를 거치지 않고, 한번에 원하는 다차원 배열로 만들 수 있다. - ex) 5 부터 시작해서 25개의 순차적인 정수를 만들고, 이를 5X5 행렬로 만든다. numpy.arange( , ).reshape( , ) 더보기