Python/NumPy | Pandas 72

[Python] Pandas - Series 2

개요 2022.12.05 - [Python] Pandas - Series 1에 이어서 Series 클래스를 마저 정리한다. 시리즈와 딕셔너리 자료형 Series 객체는 인덱스 라벨을 통해 인덱싱할 수 있으므로 인덱스 라벨을 키로 하는 딕셔너리와 같다고 할 수 있다. 때문에 딕셔너리가 제공하는 in 연산도 가능하고 items 메서드를 이용해 키, 값을 접근할 수도 있다. in 연산 s = pd.Series([9904312, 3448737, 2890451, 2466052], index=["서울", "부산", "인천", "대구"]) '부산' in s, '경기' in s # 실행 결과 (True, False) items() s = pd.Series([9904312, 3448737, 2890451, 2466052..

[Python] Pandas - Series 1

Pandas Python에서 데이터를 다룰 때 빠질 수 없는 패키지로, pandas를 이용하면 다양한 방법으로 데이터를 조작할 수 있다. 대부분의 데이터는 시계열(Series)이나 표(Table) 형태로 나타낼 수 있는데, pandas는 이러한 데이터를 다룰 수 있도록 Series, Dataframe 클래스를 제공한다. 패키지 import pandas 패키지를 import 할 때는 관례적으로 pd라는 이름을 사용한다. import pandas as pd Series NumPy에서 제공하는 1차원 배열과 유사하지만 데이터의 의미를 나타내는 index를 붙일 수 있다. 데이터는 value에 해당한다. 생성 리스트나 1차원 배열 형식의 데이터를 Series 클래스 생성자로 전달하면 Series 클래스 객체를 ..

[Python] NumPy - 난수 발생과 카운팅 2

개요 2022.12.02 - [Python] NumPy - 난수 발생과 카운팅 1에 이어 마저 내용을 정리한다. 난수 생성 np.random 패키지는 rand 함수 이외에도 난수를 생성하는 함수를 제공하는데, 그중 많이 사용하는 것은 rand 함수를 포함하여 3가지이다. rand 0부터 1사이의 균일한 확률 분포로 실수 난수를 생성한다. 매개변수로 생성할 난수의 크기를 지정하는데, 여러 개의 인수를 넣으면 해당 크기를 가진 행렬을 생성한다. np.random.rand(10) np.random.rand(3, 5) # 실행 결과 array([0.95894927, 0.65279032, 0.63505887, 0.99529957, 0.58185033, 0.41436859, 0.4746975 , 0.6235101 ..

[Python] NumPy - 난수 발생과 카운팅 1

난수 발생 Pythom을 이용해 데이터를 무작위로 섞거나 난수를 발생시키는 방법을 정리한다. 시드 설정 컴퓨터 프로그램에서 일반적으로 말하는 난수란, 특정한 시작 숫자로부터 정해진 알고리즘에 의해 난수처럼 보이는 수열을 생성한 것이다. 이때 시작 숫자를 시드(seed)라고 한다. 시드는 보통 현재 시각 등을 이용해 자동으로 정하지만 수동으로 설정할 수도 있다. NumPy에서 시드를 설정하는 함수는 random.seed()로, 매개변수로 0과 같거나 큰 정수를 넣는다. np.random.seed(0) 시드를 설정한 후, random.rand 함수로 난수를 발생시킬 수 있다. 매개변수로 생성할 난수의 개수를 전달한다. np.random.rand(10) # 실행 결과 array([0.5488135 , 0.71..

[Python] NumPy - 기술 통계 2

개요2022.11.25 - [Python] NumPy - 기술 통계 1에 이어서 기술 통계 관련 함수를 마저 정리한다.   최댓값과 최솟값데이터 중에서 가장 큰 값과 작은 값인 최댓값과 최솟값은 max/min 함수로 찾는다.x = np.array([18, 5, 10, 23, 19, -8, 10, 0, 0, 5, 2, 15, 8, 2, 5, 4, 15, -1, 4, -7, -24, 7, 9, -6, 23, -13])x.max(), x.min()# 실행 결과(23, -24)   중앙값데이터를 크기 순으로 정렬했을 때 가운데에 있는 수를 중앙값이라고 한다. 만약 데이터의 수가 짝수이면 가운데에 있는 두 수의 평균을 의미한다.np..

[Python] NumPy - 기술 통계 1

기술 통계 NumPy는 데이터 집합에 대한 통계를 계산하는 함수를 제공하는데, 이를 기술 통계(descriptive statistics)라고 한다. 데이터의 개수(count) 평균(mean, average) 분산(variance) 표준 편차(standard deviation) 최댓값(maximum) 최솟값(minimum) 중앙값(median) 사분위수(quartile) 데이터의 수 데이터의 수는 데이터의 길이를 반환하는 len 함수로 구한다. x = np.array([18, 5, 10, 23, 19, -8, 10, 0, 0, 5, 2, 15, 8, 2, 5, 4, 15, -1, 4, -7, -24, 7, 9, -6, 23, -13]) len(x) # 실행 결과 26 표본 평균 일반적으로 의미하는 평균을 ..

[Python] NumPy - 배열의 연산 2

개요 2022.11.19 - [Python] NumPy - 배열의 연산 1에 이어 배열의 연산 관련된 부분을 마저 정리한다. 차원 축소 연산 행렬에서 하나의 행에 있는 원소를 하나의 데이터 집합으로 보고 최댓값 또는 최솟값, 평균값 등을 구하면 결괏값으로 각 행에 대한 하나의 숫자, 1차원 벡터가 구해진다. 이러한 연산을 차원 축소(dimension reduction) 연산이라고 한다. NumPy는 다음과 같은 차원 축소 연산 함수를 지원한다. min/max : 배열의 최소값/최대값 x = np.arange(5) x.min(), x.max() # 실행 결과 (0, 4) argmin, argmax : 배열의 최솟값/최댓값의 위치 x = np.array([4, 2, -1, 3]) x.argmin(), x.a..

[Python] NumPy - 배열의 연산 1

벡터화 연산 NumPy가 지원하는 벡터화 연산을 사용하면 반복문을 명시적으로 사용하지 않아도 배열의 모든 원소에 대한 반복 연산을 할 수 있다. 이로 인해 선형 대수 공식과 동일한 형태로 Python 코드를 작성할 수 있게 된다. 선형 대수에서 두 벡터의 합은 다음과 같이 구한다. $$ x = \begin{bmatrix}1 \\ 2 \\ 3 \\ \vdots \\ 10000 \end{bmatrix}, \;\;\;\; y = \begin{bmatrix}10001 \\ 10002 \\ 10003 \\ \vdots \\ 20000 \end{bmatrix}, $$ 일 때, 두 벡터의 합 $$ z = x + y $$ 은 다음과 같이 구한다. $$ \begin{bmatrix}1 \\ 2 \\ 3 \\ \vdots ..

[Python] Numpy - 배열의 생성과 변형 2

개요 2022.11.11 - [Python] NumPy - 배열 1 2022.11.12 - [Python] NumPy - 배열 2 (인덱싱과 슬라이싱) 2022.11.13 - [Python] NumPy - 배열의 생성과 변형 1 에 이어 NumPy에 대해서 계속 정리한다. 배열의 크기 변형 reshape reshape 함수로 배열 내 데이터는 유지하면서 형태를 변경할 수 있다. a = np.arange(10) a a.reshape(2, 5) # 실행 결과 array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) array([[0, 1, 2, 3, 4], [5, 6, 7, 8, 9]]) 사용하는 원소의 개수가 정해져 있기 때문에 매개변수로 전달하는 튜플 중 하나가 -1이면, 자동으로 차원을 계산..

[Python] NumPy - 배열의 생성과 변형 1

개요 2022.11.11 - [Python] NumPy - 배열 1 2022.11.12 - [Python] NumPy - 배열 2 (인덱싱과 슬라이싱) 에 이어 NumPy에 대해서 계속 정리한다. 자료형 NumPy의 배열(ndarray 클래스 객체) 내 원소는 모두 같은 자료형이어야 한다. array 함수로 배열 생성 시 dtype 인수를 사용하여 자료형을 명시적으로 지정할 수 있다. 전달한 매개변수가 없으면 타입을 추론하게 된다. 자료형을 지정할 때는 아래와 같은 dtype 접두사 + 바이트/글자 수를 전달하여 지정한다. 숫자는 생략할 수 있고, 생략 시에는 OS에 따라 적절한 크기로 지정된다. dtype 접두사 설명 사용 예 b 불리언 b (참 혹은 거짓) i 정수 i8 (64비트) u 부호 없는 정..

1 ··· 4 5 6 7 8