Logaritmische indeling

Moderators: dirkwb, Xilvo

Forumregels
(Middelbare) school-achtige vragen naar het forum "Huiswerk en Practica" a.u.b.
Zie eerst de Huiswerkbijsluiter
Reageer
Gebruikersavatar
Beheer
Berichten: 15.202

Logaritmische indeling

Ik wil verschillende populaties indelen volgens een logaritmische schaal. Een makkelijk voorbeeld is om te denken in artiesten: er zijn populaire artiesten (uitgedrukt in het aantal fans) en minder populaire artiesten. Het gros van de artiesten stelt niet veel voor, sommigen doen het wel aardig, maar er staan er maar een paar aan de top.

Even wat definities die later in dit topic vast handig zijn:

A = artiest

n = het aantal categorieën dat ik wil onderscheiden

C1 = de groep met de meest populaire artiesten

Cn = de groep minst populaire artiesten

F = het aantal fans van een artiest

Ik heb het gevoel dat ik deze verdeling het best kan maken op basis van een natuurlijk logaritme (maar ik sta open voor andere suggesties).

Nu ben ik op zoek naar een eenduidige definitie van de categoriegrenzen.

C1: F > x1

C2: x1 < F < x2

C3: x2 < F < x3

C...

Cn: F < xn
Never be afraid to try something new. Remember, amateurs built the ark. Professionals built the Titanic

Berichten: 14

Re: Logaritmische indeling

En wat wil je nu van ons?

Gebruikersavatar
Beheer
Berichten: 15.202

Re: Logaritmische indeling

Een vergelijking waar de waarde van x uitrolt, uitgedrukt in F en n.

Om hier maar even iets onzinnigs neer te zetten om een indruk te geven:

xi = Fmax - i(Fmax - Fmin)/n

Maar dit zou resulteren in 4 even grote groepen. Terwijl de bedoeling is om dat logaritmisch te doen.
Never be afraid to try something new. Remember, amateurs built the ark. Professionals built the Titanic

Re: Logaritmische indeling

Stel er zijn 80 artiesten.

2 ervan hebben 100 fans

en de overigen allen 3 fans.

Hoe zou je dit in 7 groepen willen verdelen?

Re: Logaritmische indeling

Het is me niet precies duidelijk wat de gedachte achter de indeling is.

Hier een methode om de groep artiesten in subgroepen onder te verdelen, zodat in elke groep minstens 2 artiesten zijn ondergebracht:

We streven er naar de groep van N artiesten in K clustergroepen te verdelen.

Het aantal fans van de N artiesten is (in stijgende volgorde! ;)
\(b_1,b_2,\cdots,b_N\)
.

Bekijk het rijtje
\(b_2-b_1, b_3-b_2, \cdots, b_N-b_{N-1}\)
.

Kies een kleinste waarde uit dit rijtje (dit is dus het kleinste verschil in aantal fans).

Stel het is
\(b_3-b_2\)
.

Dan willen we dat
\(b_2\)
en
\(b_3\)
in dezelfde groep komen (groep 1).

Vervang
\(b_2\)
en
\(b_3\)
in het rijtje door hun gemiddelde:
\(b_{2,3}\)
.

Je krijgt dan het rijtje
\(b_1,b_{2,3},b_4,b_5,\cdots,b_N\)
Nu doen we hetzelfde met dit rijtje.

Er zijn 2 mogelijkheden:

1.
\(b_4-b_{2,3}\)
of
\(b_{2,3}-b_1\)
is de kleinste waarde.

In dat geval wordt groep 1:
\(\{2,3,4\}\)
, respectievelijk
\(\{1,2,3\}\)
,

of

2.
\(b_k-b_{k-1}\)
is de kleinste waarde voor een of andere
\(k\)
, en we krijgen een nieuwe groep,

groep 2:
\(\{k-1,k\}\)
.

We zijn klaar als het rijtje nog uit precies K elementen bestaat,

tenzij in dat rijtje nog termen zitten met een index bestaande uit 1 integer,

want dan gaan we door tot de laatste term met 1-integer-index verdwenen is.

Gebruikersavatar
Berichten: 2.391

Re: Logaritmische indeling

Miels,

Kan je hier iets mee?

Je kan de logaritmische basis (gele cel) zelf kiezen teneinde de klassen aan te passen. De rest van het model past zich automatisch aan.

Het vinden van de klasse bij een gekend aantal fans is de simpele formule:

=ROUND(LOG(N,LogBase),0) waarbij N het aantal fans is.
Miels_klassen.png
Miels_klassen.png (10 KiB) 434 keer bekeken
Miels_01.xls
(18.5 KiB) 130 keer gedownload
Eric

Gebruikersavatar
Berichten: 2.391

Re: Logaritmische indeling

Tussen haakjes:

Je kan e in de gele cel zetten als =EXP(1)

Bij gebruik van Natuurlijke logaritmes (base e) of Briggse (base 10) kan je natuurlijk de formules vereenvoudigen.

De bovenstaande methode laat toe met elke willekeurige base te spelen.

De formules worden dan:

Algemeen = elke willekeurige base = vorige post:

=ROUND(LogBase^Klasse,0)

=ROUND(LogBase^Klassegrens,0)

=ROUND(LOG(N,LogBase),0)

Base e:

=ROUND(EXP(Klasse),0)

=ROUND(EXP(Klassegrens),0)

=ROUND(LN(N),0)

Base 10:

=ROUND(10^Klasse,0) (blijft gelijk)

=ROUND(10^Klassegrens,0) (blijft gelijk)

=ROUND(LOG(N),0)

ROUND is in de Nederlandse MS Excel vermoedelijk AFRONDEN (of zoiets)
Eric

Reageer