import%20marimo%0A%0A__generated_with%20%3D%20%220.6.20%22%0Aapp%20%3D%20marimo.App()%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20__()%3A%0A%20%20%20%20import%20marimo%20as%20mo%0A%20%20%20%20mo.md(%22%22%22%0A%20%20%20%20%23%20Anal%C3%BDza%20hodnocen%C3%AD%20film%C5%AF%20z%20IMDB%0A%0A%20%20%20%20Zaujaly%20m%C4%9B%20%5Bdata%20hodnocen%C3%AD%20film%C5%AF%20z%20IMDB%20z%20Kaggle%5D(https%3A%2F%2Fwww.kaggle.com%2Fdatasets%2Famanbarthwal%2Fimdb-movies-data).%20Vynech%C3%A1me-li%20pol%C3%AD%C4%8Dka%20jako%20je%20URL%20plak%C3%A1tu%20a%20text%20recenze%2C%20kter%C3%A1%20pro%20na%C5%A1e%20%C3%BA%C4%8Dely%20nejsou%20moc%20u%C5%BEite%C4%8Dn%C3%A1%2C%20m%C3%A1me%20n%C3%A1sleduj%C3%ADc%C3%AD%20vlastnosti%3A%0A%0A%20%20%20%20%20-%20**Title**%20%E2%80%93%20n%C3%A1zev%20filmu%0A%20%20%20%20%20-%20**Year**%20%E2%80%93%20rok%20vyd%C3%A1n%C3%AD%0A%20%20%20%20%20-%20**Certificate**%20%E2%80%93%20v%C4%9Bkov%C3%A9%20hodnocen%C3%AD%0A%20%20%20%20%20-%20**Duration%20(min)**%20%E2%80%93%20d%C3%A9lka%20v%20minut%C3%A1ch%0A%20%20%20%20%20-%20**Genre**%20%E2%80%93%20seznam%20%C5%BE%C3%A1nr%C5%AF%20%0A%20%20%20%20%20-%20**Rating**%20%E2%80%93%20hodnocen%C3%AD%20u%C5%BEivatel%C5%AF%0A%20%20%20%20%20-%20**Metascore**%20%E2%80%93%20hodnocen%C3%AD%20kritik%C5%AF%0A%20%20%20%20%20-%20**Director**%20%E2%80%93%20re%C5%BEis%C3%A9r%0A%20%20%20%20%20-%20**Votes**%20%E2%80%93%20po%C4%8Det%20hlas%C5%AF%2C%20kter%C3%A9%20film%20na%20IMDB%20dostal%0A%20%20%20%20%20-%20**Review%20Count**%20%E2%80%93%20Po%C4%8Det%20recenz%C3%AD%0A%0A%20%20%20%20V%20popisu%20datasetu%20autor%20p%C3%AD%C5%A1e%2C%20%C5%BEe%20z%C3%ADskal%20data%20scrapov%C3%A1n%C3%ADm%20IMDB.%20Pokud%20data%20nejsou%20%E2%80%9Ef%C3%A9rov%C4%9B%E2%80%9C%20vybran%C3%A1%2C%20tak%20se%20to%20odraz%C3%AD%20i%20v%20na%C5%A1ich%20pozorov%C3%A1n%C3%ADch.%20To%20je%20pot%C5%99eba%20zv%C3%A1%C5%BEit%20ne%C5%BE%20budeme%20d%C4%9Blat%20obecn%C3%A9%20z%C3%A1v%C4%9Bry%20o%20filmov%C3%A9m%20pr%C5%AFmyslu.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%20mo%2C%0A%0A%0A%40app.cell%0Adef%20__()%3A%0A%20%20%20%20import%20pandas%20as%20pd%0A%20%20%20%20dataset%20%3D%20pd.read_csv(%22imdb-movies-dataset.csv%22)%5B%5B%22Title%22%2C%20%22Year%22%2C%20%22Certificate%22%2C%20%22Duration%20(min)%22%2C%20%22Genre%22%2C%20%22Rating%22%2C%20%22Metascore%22%2C%20%22Director%22%2C%20%22Votes%22%2C%20%22Review%20Count%22%5D%5D.convert_dtypes()%0A%20%20%20%20dataset.head(n%3D2)%0A%20%20%20%20return%20dataset%2C%20pd%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20__(mo)%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20%20%20%20%20%23%23%20Hypot%C3%A9zy%0A%0A%20%20%20%20%20%20%20%20Pust%C3%ADme%20se%20tedy%20do%20formulov%C3%A1n%C3%AD%20hypot%C3%A9z.%20N%C4%9Bkolik%20n%C3%A1pad%C5%AF%3A%0A%0A%20%20%20%20%20%20%20%20%20-%20Dramata%20maj%C3%AD%20vy%C5%A1%C5%A1%C3%AD%20hodnocen%C3%AD%20od%20kritik%C5%AF%20ne%C5%BE%20ostatn%C3%AD%20filmy%0A%20%20%20%20%20%20%20%20%20-%20Hodnocen%C3%AD%20od%20u%C5%BEivatel%C5%AF%20line%C3%A1rn%C4%9B%20roste%20s%20hodnocen%C3%ADm%20od%20kritik%C5%AF%0A%20%20%20%20%20%20%20%20%20-%20Star%C5%A1%C3%AD%20filmy%20maj%C3%AD%20lep%C5%A1%C3%AD%20hodnocen%C3%AD%20(v%20datasetu%20by%20mohl%20nastat%20t%C5%99eba%20%5Bsurvivorship%20bias%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FSurvivorship_bias)%2C%20tedy%20%C5%BEe%20by%20obsahoval%20nap%C5%99.%20jen%20ty%20slavn%C4%9Bj%C5%A1%C3%AD%20star%C5%A1%C3%AD%20filmy)%0A%0A%20%20%20%20%20%20%20%20A%20pak%20n%C3%A1sleduj%C3%ADc%C3%AD%20o%20n%C4%9Bco%20slo%C5%BEit%C4%9Bj%C5%A1%C3%AD%20n%C3%A1pady%3A%0A%0A%20%20%20%20%20%20%20%20%20-%20Hodnocen%C3%AD%20od%20kritik%C5%AF%20je%20nez%C3%A1visl%C3%A9%20na%20v%C4%9Bkov%C3%A9m%20hodnocen%C3%AD%0A%20%20%20%20%20%20%20%20%20-%20Po%C4%8Det%20film%C5%AF%2C%20kter%C3%A9%20re%C5%BE%C3%ADroval%20dan%C3%BD%20re%C5%BEis%C3%A9r%2C%20tvo%C5%99%C3%AD%20geometrick%C3%A9%20rozd%C4%9Blen%C3%AD%20(%C3%BAsp%C4%9B%C5%A1n%C3%AD%20re%C5%BEis%C3%A9%C5%99i%20re%C5%BE%C3%ADruj%C3%AD%20dal%C5%A1%C3%AD%20filmy%2C%20ti%20ne%C3%BAsp%C4%9B%C5%A1n%C3%AD%20skon%C4%8D%C3%AD%20po%20n%C4%9Bjak%C3%A9m%20propad%C3%A1ku)%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20__(dataset%2C%20mo)%3A%0A%20%20%20%20import%20scipy%0A%20%20%20%20import%20matplotlib.pyplot%20as%20plt%0A%20%20%20%20import%20numpy%20as%20np%0A%0A%20%20%20%20def%20hypothesis_1()%3A%0A%20%20%20%20%20%20%20%20relevant_films%20%3D%20dataset%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Genre%22%5D.notnull()%20%26%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Metascore%22%5D.notnull()%0A%20%20%20%20%20%20%20%20%5D%0A%0A%20%20%20%20%20%20%20%20dramas%20%3D%20relevant_films.loc%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Genre%22%5D.str.contains(%22Drama%22)%0A%20%20%20%20%20%20%20%20%5D%0A%20%20%20%20%20%20%20%20other%20%3D%20relevant_films.loc%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20~dataset%5B%22Genre%22%5D.str.contains(%22Drama%22)%0A%20%20%20%20%20%20%20%20%5D%0A%0A%20%20%20%20%20%20%20%20result%20%3D%20scipy.stats.ttest_ind(dramas%5B%22Metascore%22%5D%2C%20other%5B%22Metascore%22%5D%2C%20alternative%3D%22greater%22)%0A%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots(2)%0A%20%20%20%20%20%20%20%20ax%5B0%5D.hist(dramas%5B%22Metascore%22%5D%2C%20bins%3Dnp.arange(1%2C%20101))%0A%20%20%20%20%20%20%20%20ax%5B0%5D.title.set_text(%22Hodnocen%C3%AD%20dramat%22)%0A%20%20%20%20%20%20%20%20ax%5B1%5D.hist(other%5B%22Metascore%22%5D%2C%20bins%3Dnp.arange(1%2C%20101))%0A%20%20%20%20%20%20%20%20ax%5B1%5D.title.set_text(%22Hodnocen%C3%AD%20zbyl%C3%BDch%20film%C5%AF%22)%0A%20%20%20%20%20%20%20%20plt.tight_layout()%0A%0A%20%20%20%20%20%20%20%20return%20result%2C%20fig%0A%0A%20%20%20%20result1%2C%20fig1%20%3D%20hypothesis_1()%0A%0A%20%20%20%20mo.md(f%22%22%22%0A%20%20%20%20%23%23%23%20Hypot%C3%A9za%20I%3A%20Dramata%20maj%C3%AD%20vy%C5%A1%C5%A1%C3%AD%20hodnocen%C3%AD%20od%20kritik%C5%AF%20ne%C5%BE%20ostatn%C3%AD%20filmy%0A%20%20%20%20Jako%20%24H_0%24%20zvol%C3%ADme%20%E2%80%9EMezi%20hodnocen%C3%ADm%20dramat%20a%20ostatn%C3%ADch%20film%C5%AF%20kritiky%20nen%C3%AD%20rozd%C3%ADl%E2%80%9C.%20%0A%20%20%20%20A%20%24H_1%24%20bude%20%E2%80%9EDramata%20dost%C3%A1vaj%C3%AD%20vy%C5%A1%C5%A1%C3%AD%20hodnocen%C3%AD%20od%20kritik%C5%AF%20ne%C5%BE%20ostatn%C3%AD%20filmy%E2%80%9C.%0A%0A%20%20%20%20Provedeme-li%20p%C3%A1rov%C3%BD%20t-test%20t%C4%9Bchto%20dvou%20nez%C3%A1visl%C3%BDch%20vzork%C5%AF%20pomoc%C3%AD%20%60scipy.stats.ttest_ind%60%2C%20vyjde%20n%C3%A1m%20%24p%24-hodnota%20**%24%5C%5Capprox%20%7Bresult1.pvalue%3A.2f%7D%24**%2C%20tedy%20m%C5%AF%C5%BEeme%20%24H_0%24%20ve%20prosp%C4%9Bch%20%24H_1%24%20zam%C3%ADtnout.%20%0A%0A%20%20%20%20Mohlo%20by%20to%20tedy%20nasv%C4%9Bd%C4%8Dovat%20tomu%2C%20%C5%BEe%20dramata%20dost%C3%A1vaj%C3%AD%20vy%C5%A1%C5%A1%C3%AD%20hodnocen%C3%AD%20od%20kritik%C5%AF%20ne%C5%BE%20ostatn%C3%AD%20filmy.%0A%20%20%20%20%7Bmo.as_html(fig1)%7D%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%20fig1%2C%20hypothesis_1%2C%20np%2C%20plt%2C%20result1%2C%20scipy%0A%0A%0A%40app.cell%0Adef%20__(dataset%2C%20mo%2C%20np%2C%20plt%2C%20scipy)%3A%0A%20%20%20%20def%20hypothesis_2()%3A%0A%20%20%20%20%20%20%20%20relevant_films%20%3D%20dataset%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Metascore%22%5D.notnull()%20%26%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Rating%22%5D.notnull()%0A%20%20%20%20%20%20%20%20%5D%0A%0A%20%20%20%20%20%20%20%20result%20%3D%20scipy.stats.linregress(relevant_films%5B%22Metascore%22%5D%2C%20relevant_films%5B%22Rating%22%5D%2C%20alternative%3D%22greater%22)%0A%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots()%0A%20%20%20%20%20%20%20%20ax.set_xlabel(%22Metascore%20(hodnocen%C3%AD%20kritik%C5%AF)%22)%0A%20%20%20%20%20%20%20%20ax.set_ylabel(%22Rating%20(hodnocen%C3%AD%20u%C5%BEivatel%C5%AF)%22)%0A%20%20%20%20%20%20%20%20ax.scatter(relevant_films%5B%22Metascore%22%5D%2C%20relevant_films%5B%22Rating%22%5D)%0A%20%20%20%20%20%20%20%20xs%20%3D%20np.linspace(1%2C%20100%2C%2020)%0A%20%20%20%20%20%20%20%20ax.plot(xs%2C%20result.slope*xs%20%2B%20result.intercept%2C%20%22r-%22)%0A%0A%20%20%20%20%20%20%20%20return%20result%2C%20fig%0A%0A%20%20%20%20result2%2C%20fig2%20%3D%20hypothesis_2()%0A%0A%20%20%20%20mo.md(f%22%22%22%0A%20%20%20%20%23%23%23%20Hypot%C3%A9za%20II%3A%20Hodnocen%C3%AD%20od%20u%C5%BEivatel%C5%AF%20line%C3%A1rn%C4%9B%20roste%20s%20hodnocen%C3%ADm%20od%20kritik%C5%AF%0A%20%20%20%20Jako%20%24H_0%24%20zvol%C3%ADme%20%E2%80%9EHodnocen%C3%AD%20od%20u%C5%BEivatel%C5%AF%20nesouvis%C3%AD%20s%20hodnocen%C3%ADm%20od%20kritik%C5%AF%E2%80%9C.%20%0A%20%20%20%20A%20%24H_1%24%20bude%20%E2%80%9EHodnocen%C3%AD%20od%20u%C5%BEivatel%C5%AF%20line%C3%A1rn%C4%9B%20roste%20s%20hodnocen%C3%ADm%20od%20kritik%C5%AF%E2%80%9C.%0A%0A%20%20%20%20Ud%C4%9Bl%C3%A1me%20tedy%20line%C3%A1rn%C3%AD%20regresi.%0A%0A%20%20%20%20Vych%C3%A1z%C3%AD%20n%C3%A1m%20%24p%24-hodnota%20**%24%5C%5Capprox%20%7Bresult2.pvalue%3A.2f%7D%24**.%20Tedy%20op%C4%9Bt%20m%C5%AF%C5%BEeme%20zam%C3%ADtnout%20%24H_0%24%20ve%20prosp%C4%9Bch%20%24H_1%24.%0A%20%20%20%20%7Bmo.as_html(fig2)%7D%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%20fig2%2C%20hypothesis_2%2C%20result2%0A%0A%0A%40app.cell%0Adef%20__(dataset%2C%20mo%2C%20np%2C%20plt%2C%20scipy)%3A%0A%20%20%20%20def%20hypothesis_3()%3A%0A%20%20%20%20%20%20%20%20relevant_films%20%3D%20dataset%5B%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Year%22%5D.notnull()%20%26%0A%20%20%20%20%20%20%20%20%20%20%20%20dataset%5B%22Metascore%22%5D.notnull()%0A%20%20%20%20%20%20%20%20%5D%0A%0A%20%20%20%20%20%20%20%20result%20%3D%20scipy.stats.linregress(2024-relevant_films%5B%22Year%22%5D%2C%20relevant_films%5B%22Metascore%22%5D%2C%20alternative%3D%22greater%22)%0A%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots()%0A%20%20%20%20%20%20%20%20ax.set_xlabel(%22St%C3%A1%C5%99%C3%AD%20filmu%20(v%20letech)%22)%0A%20%20%20%20%20%20%20%20ax.set_ylabel(%22Metascore%20(hodnocen%C3%AD%20kritik%C5%AF)%22)%0A%20%20%20%20%20%20%20%20ax.scatter(2024-relevant_films%5B%22Year%22%5D%2C%20relevant_films%5B%22Metascore%22%5D)%0A%20%20%20%20%20%20%20%20xs%20%3D%20np.linspace(1%2C%20100%2C%2020)%0A%20%20%20%20%20%20%20%20ax.plot(xs%2C%20result.slope*xs%20%2B%20result.intercept%2C%20%22r-%22)%0A%0A%20%20%20%20%20%20%20%20return%20result%2C%20fig%0A%0A%20%20%20%20result3%2C%20fig3%20%3D%20hypothesis_3()%0A%0A%20%20%20%20mo.md(f%22%22%22%0A%20%20%20%20%23%23%23%20Hypot%C3%A9za%20III%3A%20Star%C5%A1%C3%AD%20filmy%20maj%C3%AD%20lep%C5%A1%C3%AD%20hodnocen%C3%AD%0A%20%20%20%20Jako%20%24H_0%24%20zvol%C3%ADme%20%E2%80%9EHodnocen%C3%AD%20od%20kritik%C5%AF%20nesouvis%C3%AD%20se%20st%C3%A1%C5%99%C3%ADm%20filmu%E2%80%9C.%20%0A%20%20%20%20A%20%24H_1%24%20bude%20%E2%80%9EHodnocen%C3%AD%20od%20kritik%C5%AF%20line%C3%A1rn%C4%9B%20roste%20se%20st%C3%A1%C5%99%C3%ADm%20filmu%E2%80%9C.%0A%0A%20%20%20%20Znovu%20tedy%20pou%C5%BEijeme%20line%C3%A1rn%C3%AD%20regresi.%0A%0A%20%20%20%20Vych%C3%A1z%C3%AD%20n%C3%A1m%20%24p%24-hodnota%20**%24%5C%5Capprox%20%7Bresult3.pvalue%3A.2f%7D%24**.%20Tedy%20nulovou%20hypot%C3%A9zu%20zam%C3%ADtnout%20nem%C5%AF%C5%BEeme.%0A%20%20%20%20%7Bmo.as_html(fig3)%7D%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%20fig3%2C%20hypothesis_3%2C%20result3%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20__(dataset%2C%20mo)%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20f%22%22%22%0A%20%20%20%20%20%20%20%20%23%23%23%20Hypot%C3%A9za%20IV%3A%20Hodnocen%C3%AD%20od%20kritik%C5%AF%20je%20nez%C3%A1visl%C3%A9%20na%20v%C4%9Bkov%C3%A9m%20omezen%C3%AD%0A%20%20%20%20%20%20%20%20V%C4%9Bkov%C3%A9%20hodnocen%C3%AD%20m%C3%A1%20mnoho%20kategori%C3%AD%2C%20kter%C3%A9%20nejsou%20dvakr%C3%A1t%20konzistentn%C3%AD%2C%20r%C5%AFzn%C4%9B%20se%20p%C5%99ekr%C3%BDvaj%C3%AD%20(nap%C5%99.%20%0A%20%20%20%20%20%20%20%20%7B%22%2C%20%22.join(dataset%5B%22Certificate%22%5D%5Bdataset%5B%22Certificate%22%5D.notnull()%5D.unique()%5B%3A5%5D)%7D)%2C%20proto%C5%BEe%20jsou%20to%20sm%C3%ADchan%C3%A9%20syst%C3%A9my%20z%20r%C5%AFzn%C3%BDch%20zem%C3%ADch%20(viz%20%5Btabulka%20na%20wikipedii%5D(https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FMotion_picture_content_rating_system%23Comparison_table)).%20Probl%C3%A9m%20je%2C%20%C5%BEe%20to%20nejsme%20schopn%C3%AD%20p%C5%99%C3%ADmo%20odd%C4%9Blit.%0A%0A%20%20%20%20%20%20%20%20Bylo%20by%20zaj%C3%ADmav%C3%A9%20pou%C5%BE%C3%ADt%20test%20*ANOVA*%20(anal%C3%BDzu%20rozptylu)%2C%20abychom%20srovnali%20v%C5%A1echny%20kategorie%20navz%C3%A1jem.%20Ten%20v%C5%A1ak%20funguje%20pouze%20tehdy%2C%20pokud%20tvo%C5%99%C3%AD%20v%C5%A1echny%20skupiny%20norm%C3%A1ln%C3%AD%20rozd%C4%9Blen%C3%AD%20a%20pokud%20maj%C3%AD%20stejnou%20sm%C4%9Brodatnou%20odchylku.%20V%20p%C5%99%C3%ADpad%C4%9B%20hodnocen%C3%AD%20kritik%C5%AF%20asi%20m%C5%AF%C5%BEeme%20o%C4%8Dek%C3%A1vat%2C%20%C5%BEe%20maj%C3%AD%20norm%C3%A1ln%C3%AD%20rozd%C4%9Blen%C3%AD%2C%20ale%20identickou%20sm%C4%9Brodatnou%20odchylkou%20si%20v%C5%AFbec%20jist%20nejsem.%20Dalo%20by%20se%20to%20nejsp%C3%AD%C5%A1%20n%C4%9Bjak%20otestovat%2C%20ale%20rad%C4%9Bji%20pro%20jednoduchost%20je%20rozd%C4%9Bl%C3%ADme%20na%20dv%C4%9B%20kategorie%20a%20ty%20porovn%C3%A1me.%0A%0A%20%20%20%20%20%20%20%20Rozd%C4%9Bl%C3%ADme%20to%20podle%20americk%C3%A9ho%20syst%C3%A9mu%20hodnocen%C3%AD%20film%C5%AF%2C%20jeho%C5%BE%20ozna%C4%8Den%C3%AD%20jsou%20podle%20tabulky%20ch%C3%A1p%C3%A1na%20snad%20v%C5%A1ude%20stejn%C4%9B%20(u%20jin%C3%BDch%20syst%C3%A9m%C5%AF%20doch%C3%A1z%C3%AD%20ke%20zmaten%C3%AD%2C%20proto%C5%BEe%20nap%C5%99.%20A%20v%20Indii%20znamen%C3%A1%20Adult%2C%20ale%20v%20Bulharsku%20je%20naopak%20A%20vhodn%C3%A9%20i%20pro%20mal%C3%A9%20d%C4%9Bti).%20Hodnocen%C3%AD%20**G**%2C%20**PG**%20a%20**PG-13**%20d%C3%A1me%20do%20jedn%C3%A9%20kategorie%20a%20**R**%20a%20**NC-17**%20d%C3%A1me%20do%20druh%C3%A9%20(v%20prvn%C3%AD%20kategorii%20na%20film%20m%C5%AF%C5%BEe%20p%C5%99ij%C3%ADt%20kdokoli%2C%20v%20druh%C3%A9%20kategorii%20u%C5%BE%20plat%C3%AD%20n%C4%9Bjak%C3%A9%20omezen%C3%AD).%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0A%40app.cell%0Adef%20__(dataset%2C%20mo%2C%20np%2C%20plt%2C%20scipy)%3A%0A%20%20%20%20certs%20%3D%20dataset%5B%22Certificate%22%5D%0A%20%20%20%20unrestricted%20%3D%20dataset%5B(%0A%20%20%20%20%20%20%20%20(certs%20%3D%3D%20%22G%22)%20%7C%20%0A%20%20%20%20%20%20%20%20(certs%20%3D%3D%20%22PG%22)%20%7C%20%0A%20%20%20%20%20%20%20%20(certs%20%3D%3D%20%22PG-13%22)%0A%20%20%20%20)%20%26%20dataset%5B%22Metascore%22%5D.notnull()%5D%0A%20%20%20%20restricted%20%3D%20dataset%5B(%0A%20%20%20%20%20%20%20%20(certs%20%3D%3D%20%22R%22)%20%7C%20%0A%20%20%20%20%20%20%20%20(certs%20%3D%3D%20%22NC-17%22)%0A%20%20%20%20)%20%26%20dataset%5B%22Metascore%22%5D.notnull()%5D%0A%0A%20%20%20%20def%20hypothesis_4(unrestricted%2C%20restricted)%3A%0A%20%20%20%20%20%20%20%20result%20%3D%20scipy.stats.ttest_ind(unrestricted%5B%22Metascore%22%5D%2C%20restricted%5B%22Metascore%22%5D%2C%20alternative%3D%22two-sided%22)%0A%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots(2)%0A%20%20%20%20%20%20%20%20ax%5B0%5D.hist(unrestricted%5B%22Metascore%22%5D%2C%20bins%3Dnp.arange(1%2C%20101))%0A%20%20%20%20%20%20%20%20ax%5B0%5D.title.set_text(%22Hodnocen%C3%AD%20v%C4%9Bkov%C4%9B%20neomezen%C3%BDch%22)%0A%20%20%20%20%20%20%20%20ax%5B1%5D.hist(restricted%5B%22Metascore%22%5D%2C%20bins%3Dnp.arange(1%2C%20101))%0A%20%20%20%20%20%20%20%20ax%5B1%5D.title.set_text(%22Hodnocen%C3%AD%20v%C4%9Bkov%C4%9B%20omezen%C3%BDch%22)%0A%20%20%20%20%20%20%20%20plt.tight_layout()%0A%0A%20%20%20%20%20%20%20%20return%20result%2C%20fig%0A%0A%20%20%20%20result4%2C%20fig4%20%3D%20hypothesis_4(unrestricted%2C%20restricted)%0A%0A%20%20%20%20mo.md(f%22%22%22%0A%20%20%20%20Velikosti%20vzork%C5%AF%3A%0A%0A%20%20%20%20%20-%20Po%C4%8Det%20v%C4%9Bkov%C4%9B%20neomezen%C3%BDch%3A%20%7Blen(unrestricted)%7D%0A%20%20%20%20%20-%20Po%C4%8Det%20v%C4%9Bkov%C4%9B%20omezen%C3%BDch%3A%20%7Blen(restricted)%7D%0A%0A%20%20%20%20Zvol%C3%ADme%20%24H_0%24%20jako%20%E2%80%9EMezi%20hodnocen%C3%ADm%20od%20kritik%C5%AF%20v%C4%9Bkov%C4%9B%20neomezen%C3%BDch%20a%20v%C4%9Bkov%C4%9B%20omezen%C3%BDch%20film%C5%AF%20nen%C3%AD%20rozd%C3%ADl%E2%80%9C%20a%20%24H_1%24%20jako%20%E2%80%9EMezi%20hodnocen%C3%ADm%20od%20kritik%C5%AF%20v%C4%9Bkov%C4%9B%20neomezen%C3%BDch%20a%20v%C4%9Bkov%C4%9B%20omezen%C3%BDch%20film%C5%AF%20je%20rozd%C3%ADl%E2%80%9C.%0A%0A%20%20%20%20Vych%C3%A1z%C3%AD%20n%C3%A1m%20%24p%24-hodnota%20**%24%5C%5Capprox%20%7Bresult4.pvalue%3A.2f%7D%24**%2C%20co%C5%BE%20znamen%C3%A1%2C%20%C5%BEe%20m%C5%AF%C5%BEeme%20zam%C3%ADtnout%20nulovou%20hypot%C3%A9zu%2C%20tedy%20mezi%20v%C4%9Bkov%C4%9B%20omezen%C3%BDmi%20a%20v%C4%9Bkov%C4%9B%20neomezen%C3%BDmi%20filmy%20**je%20rozd%C3%ADl**%20v%20hodnocen%C3%AD%20od%20kritik%C5%AF.%0A%0A%20%20%20%20%7Bmo.as_html(fig4)%7D%0A%0A%20%20%20%20Na%20z%C3%A1klad%C4%9B%20graf%C5%AF%20to%20vypad%C3%A1%2C%20%C5%BEe%20v%C4%9Bkov%C4%9B%20omezen%C3%A9%20dost%C3%A1vaj%C3%AD%20vy%C5%A1%C5%A1%C3%AD%20hodnocen%C3%AD%2C%20ale%20toto%20nen%C3%AD%20ta%20hypot%C3%A9za%2C%20kterou%20jsme%20pro%C5%A1et%C5%99ovali%2C%20tedy%20to%20si%20nedovoluji%20tvrdit%2C%20abych%20se%20vyhnul%20%24p%24-hackingu.%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%20certs%2C%20fig4%2C%20hypothesis_4%2C%20restricted%2C%20result4%2C%20unrestricted%0A%0A%0A%40app.cell%0Adef%20__(dataset%2C%20mo%2C%20np%2C%20plt%2C%20scipy)%3A%0A%20%20%20%20directors%20%3D%20dataset.groupby(%22Director%22)%5B%22Title%22%5D.count()%0A%0A%20%20%20%20def%20fit_test_split(data%2C%20n_fit%3D2000)%3A%0A%20%20%20%20%20%20%20%20shuffled%20%3D%20data.sample(frac%3D1%2C%20random_state%3D42)%0A%20%20%20%20%20%20%20%20fit_data%20%3D%20shuffled%5B%3An_fit%5D%0A%20%20%20%20%20%20%20%20test_data%20%3D%20shuffled%5Bn_fit%3A%5D%0A%20%20%20%20%20%20%20%20return%20fit_data%2C%20test_data%0A%0A%20%20%20%20def%20verify_model(model%2C%20test_data%2C%20from_%2C%20to)%3A%0A%20%20%20%20%20%20%20%20counts_observed%20%3D%20np.bincount(test_data%2C%20minlength%3Dto)%5Bfrom_%3Ato%5D%0A%20%20%20%20%20%20%20%20freqs_model%20%3D%20model.pmf(np.arange(from_%2C%20to))%0A%0A%20%20%20%20%20%20%20%20freqs_observed%20%3D%20counts_observed.astype(np.float64)%20%2F%20len(test_data)%0A%20%20%20%20%20%20%20%20return%20scipy.stats.chisquare(freqs_observed%2C%20freqs_model)%0A%0A%20%20%20%20def%20model_data_hist(model%2C%20test_data%2C%20from_%3D1%2C%20to%3D20)%3A%0A%20%20%20%20%20%20%20%20fig%2C%20ax%20%3D%20plt.subplots()%0A%20%20%20%20%20%20%20%20xs%20%3D%20np.arange(from_%2C%20to)%0A%20%20%20%20%20%20%20%20ax.hist(test_data%2C%20bins%3Dxs%2C%20alpha%3D0.5%2C%20label%3D%22Nam%C4%9B%C5%99en%C3%A9%20hodnoty%22)%0A%20%20%20%20%20%20%20%20ax.hist(model.rvs(size%3Dtest_data.shape%5B0%5D%2C%20random_state%3D42)%2C%20bins%3Dxs%2C%20alpha%3D0.5%2C%20label%3D%22Model%20s%20geometrick%C3%BDm%20rozd%C4%9Blen%C3%ADm%22)%0A%20%20%20%20%20%20%20%20ax.legend()%0A%20%20%20%20%20%20%20%20return%20fig%0A%0A%20%20%20%20def%20hypothesis_5_model(fit_data)%3A%0A%20%20%20%20%20%20%20%20geom%20%3D%20scipy.stats.geom(1%2Ffit_data.mean())%0A%20%20%20%20%20%20%20%20assert%20geom.mean()%20%3D%3D%20fit_data.mean()%0A%20%20%20%20%20%20%20%20return%20geom%0A%0A%20%20%20%20def%20director_hypothesis(model_fn%2C%20from_%2C%20to)%3A%0A%20%20%20%20%20%20%20%20fit_data%2C%20test_data%20%3D%20fit_test_split(directors)%0A%20%20%20%20%20%20%20%20model%20%3D%20model_fn(fit_data)%0A%0A%20%20%20%20%20%20%20%20assert%20verify_model(model%2C%20model.rvs(size%3D1000)%2C%20from_%2C%20to).pvalue%20%3E%200.05%0A%0A%20%20%20%20%20%20%20%20return%20model%2C%20verify_model(model%2C%20test_data%2C%20from_%2C%20to)%2C%20model_data_hist(model%2C%20test_data)%0A%0A%20%20%20%20model5%2C%20result5%2C%20fig5%20%3D%20director_hypothesis(hypothesis_5_model%2C%201%2C%2051)%0A%0A%20%20%20%20mo.md(f%22%22%22%0A%20%20%20%20%23%23%23%20Hypot%C3%A9za%20V%3A%20Po%C4%8Det%20film%C5%AF%2C%20kter%C3%A9%20re%C5%BE%C3%ADroval%20dan%C3%BD%20re%C5%BEis%C3%A9r%2C%20tvo%C5%99%C3%AD%20geometrick%C3%A9%20rozd%C4%9Blen%C3%AD%0A%0A%20%20%20%20Rozd%C4%9Bl%C3%ADme%20data%20na%20dv%C4%9B%20%C4%8D%C3%A1sti%2C%20na%20jedn%C3%A9%20s%20pomoc%C3%AD%20metody%20moment%C5%AF%20odhadneme%20parametry%20modelu%20geometrick%C3%A9ho%20rozd%C4%9Blen%C3%AD%20a%20na%20druh%C3%A9%20ho%20otestujeme.%0A%0A%20%20%20%20K%20otestov%C3%A1n%C3%AD%20toho%2C%20jestli%20pozorovan%C3%A1%20data%20odpov%C3%ADdaj%C3%AD%20odhadnut%C3%A9%20distribuci%20by%20se%20dal%20pou%C5%BE%C3%ADt%20KS-test.%20Jedin%C3%BD%20probl%C3%A9m%20je%2C%20%C5%BEe%20jeho%20implementace%20ve%20scipy%20podporuje%20pouze%20spojit%C3%A9%20distribuce%20(m%C3%A1%20v%20sob%C4%9B%20zafixovanou%20tabulku%20Kolmogorovy%20distribuce).%0A%0A%20%20%20%20Zkus%C3%ADme%20to%20tedy%20jinak%2C%20vyu%C5%BEijeme%20test%20dobr%C3%A9%20shody%20s%2050%20r%C5%AFzn%C3%BDmi%20p%C5%99ihr%C3%A1dkami%2C%20kter%C3%A9%20budou%20popisovat%20po%C4%8Dty%20re%C5%BE%C3%ADrovan%C3%BDch%20film%C5%AF.%20P%C5%99i%C4%8Dem%C5%BE%20jejich%20o%C4%8Dek%C3%A1van%C3%A9%20pravd%C4%9Bpodobnosti%20nastav%C3%ADme%20tak%2C%20aby%20odpov%C3%ADdaly%20geometrick%C3%A9mu%20rozd%C4%9Blen%C3%AD.%0A%0A%20%20%20%20N%C3%A1%C5%A1%20model%20tedy%20bude%20%24%5C%5Capprox%5C%5Ctext%7B%7BGeom%7D%7D(%7B1%2Fmodel5.mean()%3A.2f%7D)%24%2C%20tedy%20geometrick%C3%A9%20rozd%C4%9Blen%C3%AD%20se%20st%C5%99edn%C3%AD%20hodnotou%20rovnou%20v%C3%BDb%C4%9Brov%C3%A9mu%20pr%C5%AFm%C4%9Bru%20z%20n%C3%A1hodn%C4%9B%20vybran%C3%BDch%202000%20film%C5%AF.%0A%0A%20%20%20%20Nulov%C3%A1%20hypot%C3%A9za%20je%2C%20%C5%BEe%20n%C3%A1%C5%A1%20model%20m%C3%A1%20stejnou%20distribuci%20jako%20zbytek%20dat.%20Provedeme-li%20n%C3%A1%C5%A1%20test%20dobr%C3%A9%20shody%2C%20vyjde%20n%C3%A1m%20%24p%24-hodnota%20**%24%5C%5Capprox%7Bresult5.pvalue%3A.2f%7D%24**%2C%20tedy%20m%C5%AF%C5%BEeme%20nulovou%20hypot%C3%A9zu%20zam%C3%ADtnout%2C%20co%C5%BE%20v%20tomto%20p%C5%99%C3%ADpad%C4%9B%20znamen%C3%A1%2C%20%C5%BEe%20po%C4%8Det%20film%C5%AF%20re%C5%BE%C3%ADrovan%C3%BDch%20ur%C4%8Dit%C3%BDm%20re%C5%BEis%C3%A9rem%20**netvo%C5%99%C3%AD**%20geometrick%C3%A9%20rozd%C4%9Blen%C3%AD.%0A%0A%20%20%20%20V%20grafech%20to%20sice%20vypad%C3%A1%2C%20%C5%BEe%20by%20mohlo%2C%20ale%20tak%20u%C5%BE%20to%20je%2C%20ka%C5%BEd%C3%A1%20hypot%C3%A9za%20nem%C5%AF%C5%BEe%20b%C3%BDt%20posv%C3%ADcen%C3%AD.%0A%0A%20%20%20%20%7Bmo.as_html(fig5)%7D%0A%20%20%20%20%22%22%22)%0A%20%20%20%20return%20(%0A%20%20%20%20%20%20%20%20director_hypothesis%2C%0A%20%20%20%20%20%20%20%20directors%2C%0A%20%20%20%20%20%20%20%20fig5%2C%0A%20%20%20%20%20%20%20%20fit_test_split%2C%0A%20%20%20%20%20%20%20%20hypothesis_5_model%2C%0A%20%20%20%20%20%20%20%20model5%2C%0A%20%20%20%20%20%20%20%20model_data_hist%2C%0A%20%20%20%20%20%20%20%20result5%2C%0A%20%20%20%20%20%20%20%20verify_model%2C%0A%20%20%20%20)%0A%0A%0A%40app.cell(hide_code%3DTrue)%0Adef%20__(mo)%3A%0A%20%20%20%20mo.md(%0A%20%20%20%20%20%20%20%20f%22%22%22%0A%20%20%20%20%20%20%20%20%23%23%20Z%C3%A1v%C4%9Br%3F%0A%20%20%20%20%20%20%20%20Moje%20ponau%C4%8Den%C3%AD%20z%20t%C3%A9to%20pr%C3%A1ce%20je%2C%20%C5%BEe%20se%20d%C3%A1%20na%20v%C5%A1elijak%C3%BDch%20datech%20vymyslet%20spousta%20hypot%C3%A9z%3A)%0A%0A%20%20%20%20%20%20%20%20Nev%C3%ADm%2C%20jestli%20mnou%20nezam%C3%ADtnut%C3%A9%20hypot%C3%A9zy%20skute%C4%8Dn%C4%9B%20plat%C3%AD%2C%20ale%20data%20je%20nevyvracej%C3%AD.%20Tak%C5%BEe%20zde%20jsou%20je%C5%A1t%C4%9B%20jednou%20p%C5%99ehledn%C4%9Bji%20hypot%C3%A9zy%2C%20ke%20kter%C3%BDm%20jsme%20do%C5%A1li%3A%0A%0A%20%20%20%20%20%20%20%20-%20Dramata%20maj%C3%AD%20vy%C5%A1%C5%A1%C3%AD%20hodnocen%C3%AD%20od%20kritik%C5%AF%20oproti%20ostatn%C3%ADm%20film%C5%AFm%20(j%C3%A1%20to%20v%C4%9Bd%C4%9Bl!)%0A%20%20%20%20%20%20%20%20-%20Hodnocen%C3%AD%20od%20u%C5%BEivatel%C5%AF%20line%C3%A1rn%C4%9B%20roste%20s%20hodnocen%C3%ADm%20od%20kritik%C5%AF%0A%20%20%20%20%20%20%20%20-%20Hodnocen%C3%AD%20od%20kritik%C5%AF%20nesouvis%C3%AD%20se%20st%C3%A1%C5%99%C3%ADm%20filmu%0A%20%20%20%20%20%20%20%20-%20Hodnocen%C3%AD%20od%20kritik%C5%AF%20z%C3%A1vis%C3%AD%20na%20v%C4%9Bkov%C3%A9m%20omezen%C3%AD%0A%20%20%20%20%20%20%20%20-%20Po%C4%8Det%20film%C5%AF%2C%20kter%C3%A9%20re%C5%BE%C3%ADroval%20dan%C3%BD%20re%C5%BEis%C3%A9r%2C%20netvo%C5%99%C3%AD%20geometrick%C3%A9%20rozd%C4%9Blen%C3%AD%0A%20%20%20%20%20%20%20%20%22%22%22%0A%20%20%20%20)%0A%20%20%20%20return%0A%0A%0Aif%20__name__%20%3D%3D%20%22__main__%22%3A%0A%20%20%20%20app.run()%0A