본 자료는 Elice 플랫폼의 자료를 사용하여 정리하였습니다.
import numpy as np
np.array([1, 2, 3, 4, 5]) # array([1, 2, 3, 4, 5])
np.array([1, 2, 3, 4], dtype = float) # array([1., 2., 3., 4., 5.])
or
numpy배열.astype(int) # array([1, 2, 3, 4])
np.zeros(10, dtype = int)
: 0
으로 1x10
배열 만들기np.ones((3,5), dtype = float)
: 1
로 3x5
배열 만들기(실수형태로)np.arange(0, 20, 2)
: 0 <= x < 20
으로 2배수씩 채워서 배열 만들기np.linspace(0, 1, 5)
: 0 ~ 1
을 5개로 나눠서 배열 만들기np.random.random((2,2))
: 난수로 2x2
배열 만들기np.random.normal(0, 1, (2,2))
: 평균이 0
이고 표준편차가 1
인 값으로 2x2
배열 만들기np.random.randint(0, 10, (2,2))
: 0
부터 10
까지 값으로 2x2
배열 만들기x2.ndim
: 몇차원인지x2.shape
: ?x?
배열인지x2.size
: 원소가 몇개인지x2.dtype
: 데이터타입이 뭔지배열[위치]
배열[시작:끝]
배열.reshape((행, 열))
: shape를 행x열
로 변경np.concatenate([배열1, 배열2], axis = 0)
: 행을 기준으로 배열을 이어붙인다.(axis를 1로 설정하면 열을 기준으로 삼는다.)a, b = np.split(배열, [인덱스], axis = 0)
: 행을 기준으로 인덱스 부분에서 나눈다.(axis를 1로 설정하면 열을 기준으로 삼는다.)배열 + 5
: 배열 모든 값에 +5배열 - 5
: 배열 모든 값에 -5배열 * 5
: 배열 모든 값에 x5배열 / 5
: 배열 모든 값에 /5matrix + 5
: matrix의 모든 값에 +5matrix + np.array([1, 2, 3])
: matrix행 마다 [1, 2, 3]을 더한다.np.arange(3).reshape((3, 1)) + np.arange(3)
: 3x1
과 1x3
을 더한다.np.sum(배열)
: 합np.min(배열)
: 최소값np.max(배열)
: 최대값np.mean(배열)
: 평균값배열 < 3
: 값을 다 비교하고 값 위치에 True/False를 채운다.배열[배열 < 3]
: True인 값만 출력import pandas as pd
pd.Series([1, 2, 3, 4], index = ['a', 'b', 'c', 'd'], name = 'Title')
pd.DataFrame(...)
df.to_csv(파일명)
df.to_excel(파일명)
변수명 = pd.read_csv(파일명)
변수명 = pd.read_excel(파일명)
.loc
: 인덱스를 이용해 인덱싱.iloc
: 정수를 이용해 인덱싱df[컬럼명] = np.nan
df.loc[0, 컬럼명] = 값
df[컬럼명]
df[[컬럼1, 컬럼2]]
df.isnull()
: 비어있으면 Truedf.notnull()
: 값이 있으면 Truedf.dropna()
: 비어있는 값이 있는 행 삭제df[컬럼명] = df[컬럼명].fillna(값)
: 비어있으면 값을 채워준다.df.sort_values(컬럼명, ascending = True)
: 오름차순 정렬df.sort_values([컬럼1, 컬럼2])
: 컬럼 2개로 정렬df["A"] < 0.5
df[(df["A"] < 0.5) & (df["B" > 0.3)]
or
df.query("A < 0.5 and B > 0.3")
df["Animal"].str.contains("Cat")
or
df.Animal.str.match("Cat")
df[컬럼명].apply(함수)
df.Sex.replace({"Male":0, "Female":1}, inplace = True)
df.groupby(컬럼명)
aggregate
: 집계를 한번에df.groupby(컬럼명).aggregate({'data1':'min', 'data2':np.sum})
filter
: 필터링df.groupby(컬럼명).filter(함수)
apply
: 함수 적용df.groupby(컬럼명).apply(lambda x: x.max() - x.min())
get_group
: 그룹에서 Key로 데이터 가져오기df.groupby(컬럼명).get_group(값)
index = [['A', 'A', 'B', 'B'], [1, 2, 1, 2]]
fig.set_dip(300)
fig.savefig(파일명)