以下の内容はhttp://blog.livedoor.jp/ehabu/archives/1893131.htmlより取得しました。


January 01, 2011

@eurosellerさんのツイート
都市伝説のような子どもの身長の式。自分の例で試してみて!: (父親の身長+母親の身長)÷2+13センチ=生まれてくる男の子の身長,(父親の身長+母親の身長)÷2-9センチ=生まれてくる女の子の身長
http://twitter.com/euroseller/status/21114285782470657

が気になって(うちは女の子だから(160+170)/2-9=156センチ???)pythonの練習もかねて計算してみた。
chart-woman
1900年の17歳の身長の平均を所与として上記計算で一世代20年で計算。
実際には2010年には158cmに達しているのでこれでは少なすぎる、、、でも最初の落ち込みがなければ結構いい線いっているかも。

ところが、個々の事例で行くと女の子の身長が低めに出過ぎるような気がする。
逆に男の子は高すぎか?

下記Python プログラム。googleXYChartは金融工学と経済学とプログラミングからコピペしました。

#encoding:utf-8

import random
import googleXYChart

def average(values):
    """Computes the arithmetic mean of a list of numbers.

    >>> print average([20, 30, 70])
    40.0
    """
    return sum(values, 0.0) / len(values)

def hight(avhight,n):
##    generate random hights in normal variate shape.
    avhight=avhight
    n=n
    hight=[random.normalvariate(avhight,54) for x in range(n)]
##        Standard diviation came from;
##        http://www.hql.jp/project/size1992/faq.html#3-4
##        20s 1582mm
##        30s 1571mm 55mm
##        40s 1545mm 53mm
##        50s 1524mm 53mm
##        60s 1497mm 54mm
##        70s 1460mm 55mm
##        80s 1435mm 53mm
    return hight

def makeChild(man,woman,n):
##    man and woman object makes their child.
##    Their hight is following the fomula;
##    man[x]=(man[x]+woman[x])/2+130
##    woman[x]=(man[x]+woman[x])/2-90
    
    man=man
    woman=woman
    temp=man[:]
    n=n
    for x in range(n):
        temp[x]=(man[x]+woman[x])/2+130
        woman[x]=(man[x]+woman[x])/2-90
    man=temp[:]
    random.shuffle(man,random.random)
    random.shuffle(woman,random.random)
    return man, woman

n=1000
m=3
man=hight(1634,n)
woman=hight(1532,n)
avman=[]
avwoman=[]

gen=[x for x in range(m)]
for i in range(len(gen)):
    man, woman=makeChild(man,woman,n)
    avman.append(average(man))
    avwoman.append(average(woman))

avman=[gen[:],avman[:]]
avwoman=[gen[:],avwoman[:]]

manChart=googleXYChart.googleXYChart(avman)
manURL=manChart.getChartURL()
womanChart=googleXYChart.googleXYChart(avwoman)
womanURL=womanChart.getChartURL()
print manURL
print womanURL






以上の内容はhttp://blog.livedoor.jp/ehabu/archives/1893131.htmlより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14