Skip to content

Latest commit

 

History

History
91 lines (76 loc) · 5.64 KB

report6.md

File metadata and controls

91 lines (76 loc) · 5.64 KB

課題レポート6: 平均値・標準偏差値の算出


  • Iris Data Setで提供されているデータファイルを読み込み、4変数(sepal length, sepal width, petal length, petal width)の平均値・標準偏差値を求めよ。
    • データファイルは以下のようにしてダウンロードすること。
    • データファイルの読み方
      • 1行に1サンプル分のデータが並んでいる。
      • 各サンプルは「sepal length, sepal width, petal length, petal width, name」の5項目のデータで構成される。
        • 例えば、1サンプル目は「speal length=5.1, sepal width=3.5, petal length=1.4, petal width=0.2, name=Iris-setosa」である。
      • 合計150サンプル分のデータが並んでいる。このファイルを読み込み、4変数(sepal length, sepal width, petal length, petal width)の平均値・標準偏差値を求めよ。
curl https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data -o iris.data
  • 達成目標
    • ファイル処理(読み込み)に慣れよう。
    • リスト操作・数値演算に慣れよう。
    • 変数名、関数名、コメントの大切さに気付こう。
    • レポート4で読んだtic_tac_toe.pyを参考に、ドキュメントを書いてみよう。

  • ペアや友人らと話し合って取り組んで構わないが、自分自身の言葉で述べること。試して分かったこと、自身で解決できなかった部分等についてどう取り組んだか、といった過程がわかるように示すこと。(考えを図表や文章を駆使して表現して報告する練習です)

  • レポート作成は当面「googleドキュメント」を使うこと。
  • レポートには下記を含めること。
    • タイトル
      • 今回は【プログラミング1、レポート課題6: 「平均値・標準偏差値の算出」】。
    • 提出日: yyyy-mm-dd
    • 報告者: 学籍番号、氏名
      • 複数人で相談しながらやった場合、相談者らを「協力者: 学籍番号、氏名」として示そう。
    • 課題説明
      • 1,2行程度で課題の内容を説明しよう。
    • 書いたコード
    • 実行結果
    • 考察
      • 課題への取り組みを通し、課題の意義、課題から分かったこと、今後の展望などを述べる。失敗やつまづきがあれば、それらについての失敗分析を含めること。
    • 参考リンク: 実験レポートの書き方
    • その他
      • 通常は感想等をレポートには含めませんが、練習なので課題に取り組みながら何か感じたこと、悩んでいること等、書きたいことがあれば自由に書いてください。(なければ省略OK)

  • 以下に示す条件を満足しつつ、「実行イメージ」のように結果を出力するプログラムを書け。
  • 実行イメージ
oct:tnal% python3 report6.py
iris.dataには150個のサンプルデータが列挙されています。
4変数について平均値・標準偏差値を求めた結果を以下に示します。
sepal length: average = 5.843333333333335, standard deviation = 0.8253012917851409
 sepal width: average = 3.0540000000000007, standard deviation = 0.4321465800705435
petal length: average = 3.7586666666666693, standard deviation = 1.7585291834055201
 petal width: average = 1.1986666666666672, standard deviation = 0.760612618588172
  • ヒント
  • 条件
    • 使用して良い外部モジュールは、上記で示したもののみとする。(csv, math.sqrt以外の外部モジュールを使うのは駄目)
    • 実装について。
      • スクリプトファイル名は「report6.py」とすること。
      • 最低1つは関数定義して利用すること。
        • どの処理を関数として定義するかは自由。
        • 引数・戻り値の設定に注意。例えば、引数として渡していないにも関わらず、関数内から外部の変数へアクセスするような書き方は減点対象。
      • docstring形式でドキュメントを書くこと。(参考: tic_tac_toe.py

  • 提出物は「レポート」、「作成したスクリプトファイル」の2点である。
    • もしそれ以外に作成したものがあるなら、それも提出しよう。
  • レポートは電子ファイルで提出するものとする。
  • 提出先&〆切: 授業ページを参照。