上級Python開発コース
チャプター
>
レベル
数学モジュール
統計モジュール
目的
事務所へ向かい、statistics モジュールを使用して農場の指標の統計データを記録してください。
屋根裏部屋から階段を下りると事務所があります。そこには農場に関する重要なデータが保存されているファイルがあり、そのデータを処理して文書化し、農場の将来的な成長を予測するのは良い考えです。これを行うために、statistics モジュールを利用します。モジュールは、関数やクラスなどのツールをインポートすることを可能にし、Python の機能を拡張するのに役立ちます。モジュールを設定するには、モジュール名の前に import を書きます。そうです、あなたはずっとプレイヤーを制御するためにモジュールを使用してきたのです!
import statistics
このモジュールには統計を計算するためのいくつかの関数が追加されます。事務所の統計データを処理するために使用する関数は以下の通りです:
statistics.mean(): データセットの平均を計算しますstatistics.median(): データセットの中央値(中央の値)を計算しますstatistics.median_low(): データセットの中央値の中で最も低い値を計算しますstatistics.median_high(): データセットの中央値の中で最も高い値を計算しますstatistics.mode(): データセットの中心傾向、つまりサンプル内で最も多く出現する値を計算しますstatistics.variance(): データセット内の値の分散を計算します。値が高い場合はデータが広がっており、低い場合はデータが近接していることを示します。
まずは、書類棚の前にある明るい X 印の場所へ歩き、read() 関数を使用してファイルを確認し、データを読み取ってください。現場には 3 つのレポートがあり、それぞれのデータを格納するために 3 つのリスト、weather_report、export_report、および harvest_report を作成してください。各レポートのデータは、年間の最初の 6 か月に関する 6 つの値を含んでいます。これらの値を読み取った際に、各リストに 6 つの値を記録して保存してください。
リストにデータを記録して保存したら、青いカーペットの上にある暗い X 印へ歩いてください。mean、median、low、high、および variance という名前の 5 つの変数を作成します。これらの変数には、先ほど説明した統計関数の結果が格納されます。取得したい統計情報のレポートリストを追加することで、提供されたデータの統計値が生成されます。
mean = statistics.mean( report list ) median = statistics.median( report list ) low = statistics.median_low( report list ) high = statistics.median_high( report list ) variance = statistics.variance( report list )
これらの統計データを用いて、write() 関数でメモにデータを書き留めます。コードエディタにはシーケンスが事前に用意されています。青いカーペットの X 印の場所で export_report の変数をアウトラインし、記録してください。緑のカーペットの X 印の場所で harvest_report の変数をアウトラインし、記録してください。赤いカーペットの X 印の場所で weather_report の変数をアウトラインし、記録してください。各レポートの変数をまず正しく設定し、その後に記録することで、各レポートの正確な統計データが書き留められます。
すべての統計データを記録したら、ゴールドの X 印の場所へ歩いて、新しいリスト group_report を作成してください。このリストには、順番に export_report と harvest_report を追加します。これにより、統計関数で使用できないネストされたリストが生成されます。これを解消するために、リスト内包表記を使用してネストされたリストを平坦化します。次のように記述してください: group_report= [item for sublist in group_report for item in sublist]
さらに 2 つの変数、variance と mode をそれぞれの統計関数で設定してください。variance 統計関数には group_report リストを、mode 統計関数には weather_report リストを追加します。次のように記述してください: variance = statistics.variance( group_report ) 、 mode = statistics.mode( weather_report ) 。これらの変数について、コードエディタに用意された write() 関数を実行して、レベルを完了させます。