Masjienleer - Strooiplot
Strooi plot
'n Spreidiagram is 'n diagram waar elke waarde in die datastel deur 'n punt voorgestel word.
Die Matplotlib-module het 'n metode om spreidingsdiagramme te teken, dit benodig twee skikkings van dieselfde lengte, een vir die waardes van die x-as, en een vir die waardes van die y-as:
x = [5,7,8,7,2,17,2,9,4,11,12,9,6]
y = [99,86,87,88,111,86,103,87,94,78,77,85,86]
Die x
skikking verteenwoordig die ouderdom van elke motor.
Die y
skikking verteenwoordig die spoed van elke motor.
Voorbeeld
Gebruik die scatter()
metode om 'n spreidingsdiagram te teken:
import matplotlib.pyplot as plt
x =
[5,7,8,7,2,17,2,9,4,11,12,9,6]
y =
[99,86,87,88,111,86,103,87,94,78,77,85,86]
plt.scatter(x, y)
plt.show()
Resultaat:
Strooiplot verduidelik
Die x-as verteenwoordig ouderdomme, en die y-as verteenwoordig spoed.
Wat ons uit die diagram kan lees, is dat die twee vinnigste motors albei 2 jaar oud was, en die stadigste motor was 12 jaar oud.
Let wel: Dit blyk dat hoe nuwer die kar is, hoe vinniger ry dit, maar dit kan toevallig wees, ons het immers net 13 motors geregistreer.
Ewekansige dataverspreidings
In Masjienleer kan die datastelle duisende, of selfs miljoene, waardes bevat.
Jy het dalk nie werklike wêrelddata wanneer jy 'n algoritme toets nie, jy sal dalk ewekansig gegenereerde waardes moet gebruik.
Soos ons in die vorige hoofstuk geleer het, kan die NumPy-module ons daarmee help!
Kom ons skep twee skikkings wat albei gevul is met 1000 ewekansige getalle van 'n normale dataverspreiding.
Die eerste skikking sal die gemiddelde stel op 5.0 met 'n standaardafwyking van 1.0.
Die tweede skikking sal die gemiddelde stel op 10.0 met 'n standaardafwyking van 2.0:
Voorbeeld
'n Spreidiagram met 1000 kolletjies:
import numpy
import matplotlib.pyplot as plt
x = numpy.random.normal(5.0,
1.0, 1000)
y = numpy.random.normal(10.0, 2.0, 1000)
plt.scatter(x, y)
plt.show()
Resultaat:
Strooiplot verduidelik
Ons kan sien dat die kolletjies rondom die waarde 5 op die x-as en 10 op die y-as gekonsentreer is.
Ons kan ook sien dat die verspreiding wyer is op die y-as as op die x-as.