일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- itertools
- matrix fo a linear transformation
- nonhomogeneous linear system
- Big Omega
- Big-Oh 예제
- nontrivial solution
- homogeneous linear system
- NumPy
- Big Theta
- one-to-one
- 재귀함수
- 랜덤 순서 배열
- 빅세타
- Big-Oh notation
- trivial solution
- linear dependence
- 코틀린 Hello World!
- 빅오메가
- 일차변환
- 알고리즘 분석의 실례
- 페이지 겹칩
- 빅오 표기법
- 코틀린 시작하기
- python
- recursive algorithms
- matrix trnasformations
- 배열 섞기
- includepdf
- 이진 탐색
- Big-O 예제
- Today
- Total
목록Python (28)
코딩 연습
(파이썬 & 수학) 미분계수 구하기 를 먼저 보고 오세요. 미분이 가능한 함수라면 극대 혹은 극소가 되는 점에서 \(f'(x)=0\) 이 된다는 것을 이미 배워서 알고 있다. 또한 이계도함수가 존재한다면 극대가 되는 점에서는 \(f''(x) 0\) 이 되는 것도 알고 있으리라 믿어 의심치 않는다. 위의 내용을 이용하여 함수 \(f(x)=3x^3 +2x^2-5x+1\) 의 구간 \([-1.5, 1.5]\) 에서 극댓값, 극솟값, 최댓값, 최솟값을 구해보자. >>> from sympy import * # ① >>> x = Symbol('x') >>> f = 3 * x**3 + 2 * x**2 - 5 * x + 1 # ② >>> derivative1 = Derivative(f, x).doit() # ③ >>>..
(파이썬) 극한값 구하기 를 먼저 보고 오세요 함수 \(f(x)\) 의 \(x=a\) 에서의 순간변화율(=미분계수) \(f'(a)\) 를 구해보자. 정의에 의하면 \[\begin{split} f'(a) &= \lim \limits_{x \to a} \dfrac{f(x)-f(a)}{x-a} \\ &= \lim \limits_{h \to 0} \dfrac{f(a+h)-f(a)}{h} \end{split}\] 와 같다. 우리는 두 번째 극한값을 이용하여 \(f'(a)\) 를 구할 것이다. 먼저 함수 \(f(x)\) 를 이차 다항함수로 정의해 보자. \[f(x)=3x^2-4x+1\] 이제 다음과 같은 과정이 필요하다. >>> from sympy import symbols, Limit >>> x, a, h = s..
극한값을 구하는 방법에 대해 알아보자. 극한값을 구하기 위해서는 먼저 sympy 에서 Limit 클래스와 S 클래스를 가져와야 한다. Limit 클래스는 뭘할지 금방 예상이 되지만, S 클래스는 뭘하는 클래스일까? 설명에 의하면 무한(infinity) 에 대한 정의를 포함하고 있는 클래스라고 한다. 뭔 말인지는 잘 모르겠으면 일단 예제를 보는게 정답이다. 일단 함수의 극한을 배울 때 항상 등장하는 예제 \(\lim \limits_{x \to \infty} \dfrac{1}{x}\) 를 구해보도록 하자.>>> from sympy import Limit, S, Symbol >>> x=Symbol('x') >>> Limit(1/x, x, S.Infinity) Limit(1/x, x, oo, dir='-') >..
파이썬에서 집합을 표현하기 위해서는 다음과 같이 sympy 패키지의 FiniteSet 클래스를 이용하면 된다. >>> from sympy import FiniteSet >>> A = FiniteSet(1, 2, 3, 4, 5) >>> A {1, 2, 3, 4, 5} 공집합을 정의하고 싶거나 일반적인 리스트를 집합으로 표현하고 싶다면 다음과 같이 하면 된다. >>> B=FiniteSet() >>> B EmptySet() >>> elements = ['a', 'b', 'c'] >>> C = FiniteSet(*elements) >>> C {a, b, c} 집합의 원소의 개수를 알고 싶다면 우리에게 친숙한 len() 함수를 사용하면 된다. >>> len(A) 5 원소와 집합의 포함관계 즉, \(1 \in A\..
파이썬을 이용하여 방정식을 푸는 방법에 대해 알아 보자. 방정식을 풀기 위해서는 solve() 함수가 필요하다. 다음의 예제를 보자. >>> from sympy import Symbol, solve >>> x=Symbol('x') >>> equation = 2 * x - 6 >>> solve(equation) [3] 예제에서 볼 수 있듯이 solve(equation)은 equation = 0 이라는 방정식을 풀어서 그 근을 리스트로 반환해 준다. 이차방정식의 경우는 어떻게 되는지 보자. >>> equation = x ** 2 + 3 * x + 2 >>> solve(equation) [-2, -1] >>> solve(equation, dict=True) [{x: -2}, {x: -1}] 이차방정식의 경우도..
mathematica 나 MS mathematics 에서는 \((x+1)^2\)의 결과로 \(x^2 +2x+1\) 을 얻는 것이 가능하지만, 일반적인 프로그래밍 언어에서는 이런 결과를 어떻게 얻어야 할지 모르는 경우가 대부분이다. (아니면 나만 몰랐던가 ㅠㅠ) 파이썬에서 다항식의 계산을 어떤 식으로 할 수 있는지에 대해서 알아 보자. >>> x = 1 >>> (x + 1) ** 2 4 위와 같은 결과를 얻는 것은 지극히 당연해 보인다. 그렇다면 \((x+1)^2\) 이 전개된 결과를 얻고 싶다면 어떻게 해야할까? 이럴 때 사용할 수 있는 것이 sympy 모듈의 Symbol 클래스이다. 사용법은 다음과 같다. >>> from sympy import Symbol >>> x = Symbol('x') >>> x..
파이썬을 이용하여 최빈값(mode)를 구하기 위해서는 collections 모듈의 Counter 클래스를 알고 있어야 한다. Counter는 사전(dict) 클래스의 하위 클래스로 리스트나 튜플에서 각 데이터가 등장한 횟수를 사전 형식으로 돌려준다. 예를 들면 다음과 같다. >>> from collections import Counter >>> colors = ['red', 'blue', 'red', 'green', 'blue', 'blue'] >>> cnt = Counter(colors) >>> cnt Counter({'blue': 3, 'red': 2, 'green': 1}) 또한 Counter 클래스의 most_common() 메쏘드는 등장한 횟수를 내림차순으로 정리하여 다음과 같이 보여준다. >>..
파이썬을 이용한 막대 그래프 그리기에 대해 알아보겠다. 예제에서는 KOSIS에서 얻은 2010년부터 2014년까지의 서울지역 평균기온을 사용하였다. 다음의 코드를 barchart.py 로 저장한 후, 터미널에서 python barchart.py를 해주면 그래프를 볼 수 있다. import matplotlib.pyplot as plt def barchart(data, labels): num_bars = len(data) positions = range(1, num_bars + 1) plt.barh(positions, data, align='center') plt.yticks(positions, labels) plt.xlabel('Temperature') plt.ylabel('Year') plt.title(..
꺽은선 그래프 그리기 를 공부하였다면 이제는 함수식을 이용하여 그래프 그리기에 도전해 볼 차례다. 여기서는 이차함수 \(y=ax^2+bx+c\) 의 그래프 그리기를 예제로 함수의 그래프를 어떻게 그리는지 알아보겠다. 이를 위하여 사용자로부터 계수 \(a, \;b,\;c\) 와 그래프를 그릴 \(x\) 의 범위 \(x{\rm min},\; x{\rm max}\) 를 입력받아 이차함수의 그래프를 완성해 볼 것이다. 다음은 이를 위한 파이썬 코드이다. 다음 코드를 quadraticgraph.py 로 저장한 후, 터미널에서 python quadraticgraph.py 를 해 보면 그래프가 보이 것이다. from matplotlib import pyplot as mplp def draw_graph(x, y): m..
------------ 사전 설치 작업 ------------ 파이썬을 이용하여 그래프를 그리려면 먼저 해당 패키지를 설치해야 한다. 이러한 패키지를 모아서 한 번에 설치하게 해주는 것이 바로 anaconda이다. 따라서 우리는 먼저 anaconda를 설치해야 한다. anaconda는 여기 에서 다운로드 받을 수 있다. 윈도우의 경우에는 다운로드 파일을 그냥 실행시켜주면 되고, 리눅스의 경우는 다운로드된 파일이 있는 디렉토리도 이동하여 bash Anaconda3-2.3.*-Linux-x86 _ 64.sh 명령을 실행해 주면 된다. (물론 * 부분은 자신이 다운로드 받은 버전에 맞게 수정) 이후에 나오는 질문에 대해서는 모두 yes 라고 치고 엔터키를 누르면 된다. 그리고 나서 sympy 를 설치하기 위해..