Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでリストを使った数学的計算の方法をわかりやすく解説

Pythonのリストは、単に複数の値をまとめて保持するためだけのものではありません。リストに格納したデータを活用して、さまざまな数学的な計算や演算を実行することもできます。この記事では、代表的な数値処理の例をいくつか紹介します。

例1:math.floor()で数値を切り捨てる

mathモジュールのfloor()関数を使うと、小数点以下を切り捨てた整数値を取得できます。

import math

data = 21.6
print('21.6の切り捨て結果:', math.floor(data))

実行結果

21.6の切り捨て結果: 21

リストの加重平均を計算する方法

加重平均は、「各値 × 重み」の合計を「重みの合計」で割ることで求められます。zip()関数を使えば、コストと重みの2つのリストを簡潔に組み合わせて処理できます。

例2

cost = [23, 10, 5, 32, 41]
weight = [10, 20, 30, 40, 50]

# 各要素に重みを掛けて合計し、重みの総和で割る
weighted_avg = sum(c * w for c, w in zip(cost, weight)) / sum(weight)

print('加重平均:', weighted_avg)

実行結果

加重平均: 26.066666666666666

例3:角度から三角関数の値を求める

radians()関数で度数法の角度をラジアンに変換すれば、sin()・cos()・tan()といった三角関数にそのまま渡して計算できます。

import math

degree = 180
radian = math.radians(degree)

print('与えられた角度(ラジアン):', radian)
print('sin(x):', math.sin(radian))
print('cos(x):', math.cos(radian))
print('tan(x):', math.tan(radian))

実行結果

与えられた角度(ラジアン): 3.141592653589793
sin(x): 1.2246467991473532e-16
cos(x): -1.0
tan(x): -1.2246467991473532e-16

180度(πラジアン)におけるsinとtanが「1.22e-16」という極めて小さい値になるのは、浮動小数点数特有の丸め誤差によるものです。数学的には sin(π) = 0 ですが、コンピュータ上では厳密な0にはならない点に注意してください。

主なPythonの数学関数(mathモジュール)

  • ceil(x):x以上の最小の整数値を返す
  • copysign(x, y):yの符号を付けたxを返す
  • fabs(x):xの絶対値を返す
  • factorial(x):xの階乗を返す
  • floor(x):x以下の最大の整数値を返す
  • fmod(x, y):xをyで割った余りを返す
  • frexp(x):xの仮数部と指数部をペア(m, e)として返す
  • fsum(iterable):イテラブル内の値の正確な浮動小数点の合計を返す
  • isfinite(x):xが無限大でもNaN(非数)でもない場合にTrueを返す
  • isinf(x):xが正または負の無限大の場合にTrueを返す
  • isnan(x):xがNaNの場合にTrueを返す
  • ldexp(x, i):x * (2**i) を返す
  • modf(x):xの小数部と整数部を返す
  • trunc(x):xの小数部を切り捨てた整数値を返す
  • exp(x):e**x を返す
  • expm1(x):e**x - 1 を返す
  • log(x[, base]):指定した底(デフォルトはe)に対するxの対数を返す
  • log1p(x):1+x の自然対数を返す
  • log2(x):底2のxの対数を返す
  1. PythonのBokehで画像を操作・表示する方法

    Pythonの可視化ライブラリBokehで画像を扱うには、image_url()メソッドを使い、画像URLのリストを渡すのが基本です。このメソッドを使うことで、ローカルやWeb上にある画像をプロット領域内に簡単に配置できます。実装の手順output_file()でデフォルトの出力先を設定し、show()を呼び出したときに結果がHTMLファイルとして保存されるようにします。figure()でプロット用の新しいFigure(図)オブジェクトを作成します。image_url()メソッドで、指定したURLから読み込んだ画像を描画します。show()を呼び出して、Bokehオブジェクトやアプリケーション

  2. PythonでAPIの結果を可視化する方法|GitHub APIとPlotlyを使った実践チュートリアル

    はじめにAPIを活用する最大のメリットの一つは、常に最新のライブデータを取得できる点です。データが頻繁に更新される場合でも、API経由なら最新の状態を確実に取得できます。APIプログラムは、特定の情報をリクエストするために専用のURLを使用します。たとえば「SpotifyやYouTube Musicで2020年に最も再生された楽曲トップ100」といった具合です。リクエストされたデータは、JSONやCSVなど、プログラムで扱いやすい形式で返却されます。Pythonを使えば、ほぼあらゆるURLに対してAPI呼び出しを記述できます。本記事では、GitHubのAPIからデータを抽出し、その結果をグラフ