[python]算数・数学④~数列など~
前回まで
改めて
機械学習を始めるにも、算数や数学がわからないと、入門書すら読めない。ただそこまで、ちゃんと解説してあるものもない。ということで最低限必要な数学基礎をこの記事で書けたらいいなと思っています。
環境
ほぼ影響ないですが、python3系を利用。
前提
四則演算や累乗(2乗とか3乗とか)がわかっていること。
等差数列
等差数列の$a_n$の計算(初項a、公差d)
$
a_n = a + (n-1)d
$
始点、終点(indexだから1つ前まで),項差を指定するだけ
0~10までの項差1
import numpy
np.arange(0,11,1)
->array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
#もしくは
list(range(0,11,1))
# ->[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
等差数列の和(初項a、末項l、項数n)
$
S = \frac{1}{2}n(a+l)
$
ans = np.arange(0,11,1)
sum(ans)
#-> 55
#もしくは
sum(list(range(0,11,1)))
#-> 55
等比数列
等比数列の$a_n$の計算(初項a、公比r)
$
a_n = ar^{n-1}
$
[3**i for i in range(1,11,1)]
-> [3, 9, 27, 81, 243, 729, 2187, 6561, 19683, 59049]
等比数列の和(初項a、末項l、項数n)r !=1
$
S_n = \frac{a(1-r^n)}{1-r}= \frac{a(r^n-1)}{r-1}
$
sum([3**i for i in range(1,11,1)])
#-> 88572
等比数列の和(初項a、末項l、項数n)r =1
$
S_n = an
$
ans = np.ones(10) * 5
sum(ans)
# -> 50
#もしくは
ans = [5]*10
sum(ans)
# -> 50
便利な和の公式
$
\sum_{k=1}^{n}k = \frac{1}{2}n(n+1)
$
$
\sum_{k=1}^{n}k^2 = \frac{1}{6}n(n+1)(2n+1)
$
$
\sum_{k=1}^{n}k^3 = (\frac{1}{2}n(n+1))^2
$
$
\sum_{k=1}^{n}c = nc
$
$
\sum_{k=1}^{n}(a_k+b_k) = \sum_{k=1}^{n}a_k+\sum_{k=1}^{n}b_k
$
$
\sum_{k=1}^{n}(pa_k) = p\sum_{k=1}^{n}a_k
$
ここまで
この記事では本当に一部しか扱っていませんが、以下の記事ではたくさん扱われていたので、拝見さえていただきました。
Pythonで数学の勉強:数列・級数・組み合わせ論
次回は集合と確率について投稿していきます。
Author And Source
この問題について([python]算数・数学④~数列など~), 我々は、より多くの情報をここで見つけました https://qiita.com/hiroyuki_mrp/items/44b350c371754006af06著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .