見出し画像

Pythonを用いた機械学習4日目

これは、高校生のころに習った人も多い内容ではないかと思う。今日から複数回に分けて、機械学習に必要な統計の基礎知識を学んでいくための、前提知識として数列や集合などについて学んでいく。そこで今回は、①数列の基本と②漸化式(ぜんかしき)、③数列の和とシグマ記号の3つについてまとめていく。


前回の学習内容はこちらからどうぞ。



1.数列の表現

▶︎数列・・・数が列になったもの

  適当に数字を並べた「5,3,9,2,・・・」も、数が一列に並んでいるので数列


2.漸化式

・漸化式を求めるコード

>>> a = [0] * 8
>>> a[0] = 1
>>> a[1] = 1
>>> for i in range(2, 8):
...     a[i] = a[i - 1] + a[i -2]
... 
>>> print(a)
[1, 1, 2, 3, 5, 8, 13, 21]
>>> 

1行目:リストを初期化

2行目:初項をセット

3行目:第2項をセット

5行目:漸化式で各項の値を計算

前々回、スクリプトファイル「fibonacci.py」で求めたが、漸化式をもとにプログラムを作成することもできる。


3.数列の和とシグマ記号

▶︎等差数列の初項から第n項までの和は、一般に「Σ(シグマ)」とう記号を用いて表現する。

・数列(1+2+3+・・・7)の和を求めるコード

>>> sum = 0
>>> for i in range(1, 8):
...     sum += i
... 
>>> print(sum)
28
>>> 


・公差を利用して数列(初項1、公差3、等差数列で100)の和を求めるコード

>>> sum = 0
>>> for i in range(1, 101, 3):
...     sum += i
... 
>>> print(sum)
1717
>>> 

rangeの最後の引数で公差の3を指定できる


・リストの和を関数で求めるコード

>>> a = [i for i in range(1, 101, 3)]
>>> total = sum(a)
>>> print(total)
1717
>>> 

リスト内にループを書くこともできる


次回は、集合と内包表記についてまとめている。



よろしければサポートお願いします。いただいたサポートを皆さんに還元していきたいと思っております。