기본 콘텐츠로 건너뛰기

라벨이 solve인 게시물 표시

통계관련 함수와 메서드 사전

A B C d E F G H I K L M N O P Q R S T U V W Z A statsmodels.ap.stats.anova_lm(x) statsmodels.formula.api.ols 에 의해 생성되는 모형 즉, 클래스 인스턴스(x)를 인수로 받아 anova를 실행합니다. np.argsort(x, axis=-1, kind=None) 객체 x를 정렬할 경우 각 값에 대응하는 인덱스를 반환합니다. Axis는 기준 축을 지정하기 위한 매개변수로서 정렬의 방향을 조정할 수 있음(-1은 기본값으로 마지막 축) pandas.Series.autocorr(lag=1) lag에 전달한 지연수에 따른 값들 사이의 자기상관을 계산 B scipy.stats.bernoulli(x, p) 베르누이분포에 관련된 통계량을 계산하기 위한 클래스를 생성합니다. x: 랜덤변수 p: 단일 시행에서의 확률 scipy.stats.binom(x, n, p) 이항분포에 관련된 통계량을 계산하기 위한 클래스를 생성합니다. x: 랜덤변수 n: 총 시행횟수 p: 단일 시행에서의 확률 C scipy.stats.chi2.pdf(x, df, loc=0, scale=1) 카이제곱분포의 확률밀도함수를 계산 $$f(x, k) =\frac{1}{2^{\frac{k}{2}−1}Γ(\frac{k}{2})}x^{k−1}\exp\left(−\frac{x^2}{2}\right)$$ x: 확률변수 df: 자유도 pd.concat(objs, axis=0, join=’outer’, …) 두 개이상의 객체를 결합한 새로운 객체를 반환. objs: Series, DataFrame 객체. Axis=0은 행단위 즉, 열 방향으로 결합, Axis=1은 열단위 즉, 행 방향으

sympy.solvers로 방정식해 구하기

sympy.solvers로 방정식해 구하기 대수 방정식을 해를 계산하기 위해 다음 함수를 사용합니다. sympy.solvers.solve(f, *symbols, **flags) f=0, 즉 동차방정식에 대해 지정한 변수의 해를 계산 f : 식 또는 함수 symbols: 식의 해를 계산하기 위한 변수, 변수가 하나인 경우는 생략가능(자동으로 인식) flags: 계산 또는 결과의 방식을 지정하기 위한 인수들 dict=True: {x:3, y:1}같이 사전형식, 기본값 = False set=True :{(x,3),(y,1)}같이 집합형식, 기본값 = False ratioal=True : 실수를 유리수로 반환, 기본값 = False positive=True: 해들 중에 양수만을 반환, 기본값 = False 예 $x^2=1$의 해를 결정합니다. solve() 함수에 적용하기 위해서는 다음과 같이 식의 한쪽이 0이 되는 형태인 동차식으로 구성되어야 합니다. $$x^2-1=0$$ import numpy as np from sympy import * x = symbols('x') solve(x**2-1, x) [-1, 1] 위 식은 계산 과정은 다음과 같습니다. $$\begin{aligned}x^2-1=0 \rightarrow (x+1)(x-1)=0 \\ x=1 \; \text{or}\; -1\end{aligned}$$ 예 $x^4=1$의 해를 결정합니다. solve() 함수의 인수 set=True를 지정하였으므로 결과는 집합(set)형으로 반환됩니다. eq=x**4-1 solve(eq, set=True) ([x], {(-1,), (-I,), (1,), (I,)}) 위의 경우 I는 복소수입니다.즉 위 결과의 과정은 다음과 같습니다. $$x^4-1=(x^2+1)(x+1)(x-1)=0 \rightarrow x=\pm \sqrt{-1}, \; \pm 1=\pm i,\; \pm1$$ 실수

역행렬과 행렬식

역행렬(Inverse matrix) 기약행 사다리꼴 형태 (Reduced row echelon form, rref) 확대행렬 기약행사다리꼴 형태의 특성 행렬식(Determinant) 행렬식의 특징 역행렬과 행렬식 역행렬(Inverse matrix) 행렬에 대해 행렬곱을 실시할 경우 그 자신을 반환시키는 행렬을 항등 행렬(I) 이라 합니다. 항등 행렬은 행과 열의 수가 같은 정방행렬로 np.eye() 함수에 의해 생성할 수 있습니다. import numpy as np import numpy.linalg as la import sympy as sp np.eye(3) array([[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]]) 두 행렬이 식 1을 만족한다면 행렬 B는 행렬 A의 역행렬 (inverse matrix)이고 A -1 로 나타냅니다. $$\begin{equation}\tag{1} \text{A}·\text{B} = I \rightarrow \text{B} = \text{A}^{-1} \end{equation}$$ 역행렬을 가지는 행렬을 가역행렬 (reversible matrix)이라고 하며 np.linalg.inv() 함수에 의해 계산할 수 있습니다. a=np.array([[1,3,-5], [-2,7,8], [4,0,6]]); a array([[ 1, 3, -5], [-2, 7, 8], [ 4, 0, 6]]) # a의 역행렬 a_inv=la.inv(a) np.round(a_inv, 2) array([[ 0.13, -0.06, 0.19], [ 0.14, 0.08, 0.01], [-0.09, 0.04, 0.04