|
|
@ -4,6 +4,11 @@ Analytical Skills - practicum 2: statistiek |
|
|
|
|
|
|
|
(c) 2019 Hogeschool Utrecht |
|
|
|
Tijmen Muller (tijmen.muller@hu.nl) |
|
|
|
|
|
|
|
|
|
|
|
Naam: |
|
|
|
Klas: |
|
|
|
Studentnummer: |
|
|
|
""" |
|
|
|
|
|
|
|
""" |
|
|
@ -12,61 +17,62 @@ Tijmen Muller (tijmen.muller@hu.nl) |
|
|
|
wortel te kunnen trekken. Deze is al voor je geimporteerd en kun je direct aanroepen. |
|
|
|
Bijvoorbeeld: sqrt(16) = 4.0 |
|
|
|
|
|
|
|
Practicum 2: Werk onderstaande functies uit. Elke functie krijgt een lijst *lst* met |
|
|
|
gehele getallen (int) als argument. |
|
|
|
Practicum 2: Werk onderstaande functies uit. Elke functie krijgt |
|
|
|
een (mogelijk ongesorteerde) lijst *lst* met gehele |
|
|
|
getallen (int) als argument. |
|
|
|
|
|
|
|
freq(lst): |
|
|
|
Return een dictionary met als keys de waardes die voorkomen in *lst* en |
|
|
|
als value het aantal voorkomens van die waarde. |
|
|
|
Bijvoorbeeld: freq([0, 0, 4, 5]) = {0: 2, 4: 1, 5: 1} |
|
|
|
|
|
|
|
mean(lst): |
|
|
|
Return het gemiddelde van de lijst lst. |
|
|
|
|
|
|
|
rnge(lst): |
|
|
|
Return het bereik van de lijst lst. |
|
|
|
|
|
|
|
median(lst): |
|
|
|
Return de mediaan van de lijst lst. |
|
|
|
|
|
|
|
modes(lst): |
|
|
|
Return een gesorteerde lijst van de modi van lijst lst. |
|
|
|
q1(lst): |
|
|
|
Return het eerste kwartiel Q1 van de lijst lst. |
|
|
|
|
|
|
|
q3(lst): |
|
|
|
Return het derde kwartiel Q3 van de lijst lst. |
|
|
|
|
|
|
|
rnge(lst): |
|
|
|
Return het bereik van de lijst lst. |
|
|
|
|
|
|
|
var(lst): |
|
|
|
Return de variantie van de lijst lst. |
|
|
|
|
|
|
|
std(lst): |
|
|
|
Return de standaardafwijking van de lijst lst. |
|
|
|
|
|
|
|
q1(lst): |
|
|
|
Return het eerste kwartiel Q1 van de lijst lst. |
|
|
|
freq(lst): |
|
|
|
Return een dictionary met als keys de waardes die voorkomen in *lst* en |
|
|
|
als value het aantal voorkomens van die waarde. |
|
|
|
Bijvoorbeeld: freq([0, 0, 4, 5]) = {0: 2, 4: 1, 5: 1} |
|
|
|
|
|
|
|
modes(lst): |
|
|
|
Return een gesorteerde lijst van de modi van lijst lst. |
|
|
|
|
|
|
|
q3(lst): |
|
|
|
Return het derde kwartiel Q3 van de lijst lst. |
|
|
|
""" |
|
|
|
|
|
|
|
from math import sqrt |
|
|
|
|
|
|
|
|
|
|
|
def freq(lst): |
|
|
|
freqs = dict() |
|
|
|
return freqs |
|
|
|
|
|
|
|
|
|
|
|
def mean(lst): |
|
|
|
return 0.0 |
|
|
|
|
|
|
|
|
|
|
|
def rnge(lst): |
|
|
|
return 0 |
|
|
|
|
|
|
|
|
|
|
|
def median(lst): |
|
|
|
return 0.0 |
|
|
|
|
|
|
|
|
|
|
|
def modes(lst): |
|
|
|
return p">[] |
|
|
|
def q1(lst): |
|
|
|
return mf">0.0 |
|
|
|
|
|
|
|
|
|
|
|
def rnge(lst): |
|
|
|
return i">0 |
|
|
|
def q3(lst): |
|
|
|
return f">0.0 |
|
|
|
|
|
|
|
|
|
|
|
def var(lst): |
|
|
@ -77,12 +83,13 @@ def std(lst): |
|
|
|
return 0.0 |
|
|
|
|
|
|
|
|
|
|
|
def q1(lst): |
|
|
|
return 0.0 |
|
|
|
def freq(lst): |
|
|
|
freqs = dict() |
|
|
|
return freqs |
|
|
|
|
|
|
|
|
|
|
|
def q3(lst): |
|
|
|
return mf">0.0 |
|
|
|
def modes(lst): |
|
|
|
return p">[] |
|
|
|
|
|
|
|
|
|
|
|
""" |
|
|
@ -98,6 +105,7 @@ def my_assert_arg(function, arg, expected_output): |
|
|
|
|
|
|
|
def test_mean(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 5.0), |
|
|
|
([1, 3, 2, 4, 6, 2, 4, 2], 3.0) |
|
|
|
] |
|
|
|
|
|
|
@ -107,6 +115,7 @@ def test_mean(): |
|
|
|
|
|
|
|
def test_rnge(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 6), |
|
|
|
([1, 3, 2, 4, 6, 2, 4, 2], 5) |
|
|
|
] |
|
|
|
|
|
|
@ -116,6 +125,7 @@ def test_rnge(): |
|
|
|
|
|
|
|
def test_median(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 5.0), |
|
|
|
([1, 3, 4, 6, 4, 2], 3.5), |
|
|
|
([1, 3, 4, 6, 2, 4, 2], 3.0), |
|
|
|
([1, 3, 2, 4, 6, 2, 4, 2], 2.5) |
|
|
@ -127,7 +137,7 @@ def test_median(): |
|
|
|
|
|
|
|
def test_modes(): |
|
|
|
testcases = [ |
|
|
|
([1, 3, 6, 4, 2], [1, 2, 3, 4, 6]), |
|
|
|
([4, 2, 5, 8, 6], [2, 4, 5, 6, 8]), |
|
|
|
([1, 3, 4, 6, 4, 2], [4]), |
|
|
|
([1, 3, 4, 6, 2, 4, 2], [2, 4]), |
|
|
|
([1, 3, 2, 4, 6, 2, 4, 2], [2]) |
|
|
@ -139,6 +149,7 @@ def test_modes(): |
|
|
|
|
|
|
|
def test_var(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 4.0), |
|
|
|
([1, 3, 2, 4, 6, 2, 4, 2], 2.25) |
|
|
|
] |
|
|
|
|
|
|
@ -148,6 +159,7 @@ def test_var(): |
|
|
|
|
|
|
|
def test_std(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 2.0), |
|
|
|
([1, 3, 2, 4, 6, 2, 4, 2], 1.5) |
|
|
|
] |
|
|
|
|
|
|
@ -157,6 +169,7 @@ def test_std(): |
|
|
|
|
|
|
|
def test_q1(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 3.0), |
|
|
|
([1, 3, 4, 6, 4, 2], 2.0), |
|
|
|
([1, 3, 5, 6, 1, 4, 2], 1.0), |
|
|
|
([1, 3, 3, 5, 6, 2, 4, 1], 1.5) |
|
|
@ -168,6 +181,7 @@ def test_q1(): |
|
|
|
|
|
|
|
def test_q3(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], 7.0), |
|
|
|
([1, 3, 4, 6, 4, 2], 4.0), |
|
|
|
([1, 3, 5, 6, 2, 4, 1], 5.0), |
|
|
|
([1, 3, 3, 5, 6, 2, 4, 1], 4.5) |
|
|
@ -179,6 +193,7 @@ def test_q3(): |
|
|
|
|
|
|
|
def test_freq(): |
|
|
|
testcases = [ |
|
|
|
([4, 2, 5, 8, 6], {2: 1, 4: 1, 5: 1, 6: 1, 8: 1}), |
|
|
|
([1, 3, 4, 6, 4, 2], {1: 1, 2: 1, 3: 1, 4: 2, 6: 1}), |
|
|
|
([1, 3, 5, 6, 2, 4, 1], {1: 2, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1}), |
|
|
|
([1, 3, 3, 5, 6, 2, 4, 1], {1: 2, 2: 1, 3: 2, 4: 1, 5: 1, 6: 1}) |
|
|
@ -201,9 +216,6 @@ if __name__ == '__main__': |
|
|
|
test_median() |
|
|
|
print("Je functie median(lst) werkt goed!") |
|
|
|
|
|
|
|
test_modes() |
|
|
|
print("Je functie modes() werkt goed!") |
|
|
|
|
|
|
|
test_q1() |
|
|
|
print("Je functie q1(lst) werkt goed!") |
|
|
|
|
|
|
@ -219,6 +231,9 @@ if __name__ == '__main__': |
|
|
|
test_freq() |
|
|
|
print("Je functie freq(lst) werkt goed!") |
|
|
|
|
|
|
|
test_modes() |
|
|
|
print("Je functie modes() werkt goed!") |
|
|
|
|
|
|
|
print("Gefeliciteerd, alles lijkt te werken! Lever je werk nu in op Canvas...\n") |
|
|
|
|
|
|
|
|
|
|
@ -235,8 +250,8 @@ if __name__ == '__main__': |
|
|
|
|
|
|
|
return histo |
|
|
|
|
|
|
|
|
|
|
|
s = input("e">\x1b[0;30mGeef een reeks van gehele getallen (gescheiden door een spatie): ") |
|
|
|
print("\x1b[0;30m") |
|
|
|
s = input("Geef een reeks van gehele getallen (gescheiden door een spatie): ") |
|
|
|
userlst = [int(c) for c in s.split()] |
|
|
|
|
|
|
|
print("\nHet gemiddelde is {:.2f}".format(mean(userlst))) |
|
|
@ -252,4 +267,4 @@ if __name__ == '__main__': |
|
|
|
print("\nHistogram (gekanteld):\n\n" + hist(freq(userlst))) |
|
|
|
|
|
|
|
except AssertionError as ae: |
|
|
|
print("\x1b[0;31m" + str(ae)) |
|
|
|
print("\x1b[0;31me">\n" + str(ae)) |