祝・ThinkStatsで初めてのPythonプログラム

開発

は、クリスマスイブ?なにそれおいしいの?

ども、とのです。

前回Think Statsの演習問題1-3の2~4の模範解答を見ていったわけですが、
これを元に1-3の2を自分で解いて、晴れて初のPythonプログラムが完成しました。

…正確に言うとインタプリタにHello Worldとかお決まりの文句書いてたりしたので、
初めてのモジュールといったほうがいいでしょうか。

記念に乗せておきます。
一応自分なりにリスト内包表記を使ってみました。

import survey

def MakeTable(data_dir):
    table = survey.Pregnancies()
    table.ReadRecords()
    return table

def getOutcome(data_dir):
    table = MakeTable(data_dir)
    return [p.outcome for p in table.records if p.outcome == 1]

def Summerize(data_dir):
    outcome = getOutcome(data_dir)
    print 'outcome:' , len(outcome)

def main(name, data_dir='.'):
    Summerize(data_dir)

if __name__ == '__main__':
    import sys
    main(*sys.argv)
import survey

def MakeTable(data_dir):
    table = survey.Pregnancies()
    table.ReadRecords()
    return table

def getFirstAndSecond(data_dir):
    table = MakeTable(data_dir)
    return [p.birthord for p in table.records if p.birthord == 1], [p.birthord for p in table.records if p.birthord == 2]

def Summerize(data_dir):
    first, second = getFirstAndSecond(data_dir)
    print 'first:' , len(first)
    print 'second:' , len(second)

def main(name, data_dir='.'):
    Summerize(data_dir)

if __name__ == '__main__':
    import sys
    main(*sys.argv)

コメント

タイトルとURLをコピーしました