Capítulo 6 Medidas
6.2 Medidas de centralidade
6.2.1 Média
-
A média de uma população é escrita como \(\mu\), e é definida como \[\mu = \frac{\sum_{i=1}^N x_i}{N}\]
\(\sum_{i=1}^N x_i\) é a soma de todos os dados da população.
\(N\) é a quantidade de elementos na população.
-
A média de uma amostra é escrita como \(\bar x\), e é definida como: \[\bar x = \frac{\sum_{i=1}^n x_i}{n}\]
\(\sum_{i=1}^n x_i\) é a soma de todos os dados da amostra.
\(n\) é a quantidade de elementos na amostra.
O cálculo é essencialmente o mesmo. Só mudam os símbolos: \(N\) versus \(n\), e \(\mu\) versus \(\bar x\).
6.2.2 Mediana
Já aprendemos sobre a mediana na seção sobre boxplots.
A idéia é que, depois de ordenar os dados, \(50\%\) dos dados estarão à esquerda da mediana, e \(50\%\) à direita.
A mediana não é tão sensível a outliers quanto à média.
6.2.3 Moda
A moda é o valor mais frequente do conjunto de dados.
Pode haver mais de uma moda.
Não existe uma função para a moda em R base. Por quê?
Por incrível que pareça, é complicado definir a moda de forma a conseguir resultados interessantes.
-
Por exemplo, vamos definir um conjunto de \(1000\) valores numéricos distribuídos normalmente4, com média igual a \(5\) e desvio-padrão5 igual a \(2\):
normal <- rnorm(1000, mean = 5, sd = 2)
-
O histograma dos nossos dados é
-
Vamos calcular a moda com a função
mfv
(most frequent value), do pacotemodeest
:# Pacote com funções para calcular modas library(modeest) # Por causa de um bug na função mfv, # precisamos de números com ponto decimal # (em vez de vírgula): options(OutDec = '.') mfv(normal)
## [1] -1.74205071 -0.55984022 -0.47892214 -0.32061960 -0.06772235 -0.06666557 ## [7] 0.09433172 0.10941951 0.12402743 0.27279806 0.32192019 0.33141217 ## [13] 0.38726506 0.48091010 0.56593057 0.60710668 0.73774702 0.74512161 ## [19] 0.82786991 0.86270595 0.91652436 0.92184905 0.94861410 0.95113267 ## [25] 0.95711942 0.99074663 1.02293154 1.02905077 1.11220233 1.12775707 ## [31] 1.19999398 1.25601446 1.26665613 1.28547046 1.31099471 1.32717029 ## [37] 1.34202982 1.36912244 1.37428311 1.39661697 1.39938850 1.40962514 ## [43] 1.45382798 1.45492641 1.46823491 1.50561288 1.56684697 1.57167344 ## [49] 1.57481937 1.65821618 1.66304464 1.70367418 1.71453624 1.71621538 ## [55] 1.74945617 1.77581581 1.78853600 1.79074421 1.80031883 1.80690889 ## [61] 1.82326992 1.85500086 1.93880827 1.94515699 1.96158056 1.96990765 ## [67] 1.97737016 1.98707154 1.98811102 2.03405414 2.03640979 2.04871251 ## [73] 2.07951984 2.08015398 2.08979922 2.09666976 2.12419836 2.13123602 ## [79] 2.13318841 2.13744868 2.13883115 2.14173854 2.18265854 2.20444425 ## [85] 2.21505293 2.25909735 2.27654397 2.28084430 2.28550683 2.31429776 ## [91] 2.31683256 2.31850701 2.32518958 2.33971818 2.35964080 2.36508823 ## [97] 2.37179783 2.37647395 2.39539425 2.42569017 2.44404068 2.45182043 ## [103] 2.47646755 2.48567611 2.50067170 2.50973593 2.51329664 2.51916091 ## [109] 2.52845368 2.57077412 2.58051601 2.59774475 2.60104111 2.60960171 ## [115] 2.62503478 2.62649433 2.64704464 2.65559207 2.65640733 2.66143969 ## [121] 2.66421351 2.69134608 2.70011097 2.70149962 2.71335075 2.71638344 ## [127] 2.71774146 2.73048630 2.73223839 2.73321393 2.74107427 2.74149480 ## [133] 2.75313067 2.75937678 2.76531613 2.78384588 2.78684925 2.79099794 ## [139] 2.79473292 2.80140113 2.80797100 2.81304930 2.82840861 2.83319053 ## [145] 2.83777704 2.83837323 2.84339012 2.85486060 2.86629828 2.86773369 ## [151] 2.88450163 2.90271205 2.92236859 2.94642847 2.95698354 2.95808102 ## [157] 2.96026860 2.96201282 2.96731949 2.98055303 2.99217020 2.99883674 ## [163] 3.00238435 3.01523738 3.02719763 3.02915022 3.03033523 3.03471071 ## [169] 3.03874675 3.05247295 3.05931645 3.06006135 3.07094631 3.09153534 ## [175] 3.10050662 3.11260289 3.12098105 3.12245159 3.12373917 3.12693307 ## [181] 3.12900467 3.12900693 3.13181461 3.13726604 3.15159116 3.15192157 ## [187] 3.15337848 3.16275852 3.16715972 3.17061195 3.19468481 3.20493755 ## [193] 3.21423722 3.23838030 3.24324918 3.25293772 3.25674681 3.26325983 ## [199] 3.26517455 3.27569615 3.27656932 3.31095801 3.31099534 3.31765516 ## [205] 3.31798111 3.32675531 3.34337603 3.34408565 3.36332265 3.36570854 ## [211] 3.38471852 3.39584424 3.43669318 3.43984381 3.44378853 3.44511311 ## [217] 3.44615578 3.44650729 3.45065510 3.45072106 3.45447174 3.46701353 ## [223] 3.46785123 3.47021263 3.47027131 3.47558200 3.49096166 3.49366377 ## [229] 3.49474893 3.49723718 3.50829840 3.50854677 3.51779106 3.52386861 ## [235] 3.52505113 3.52585954 3.53227975 3.54374961 3.54554032 3.54590980 ## [241] 3.55458781 3.55946726 3.56330130 3.57291512 3.57373578 3.58767253 ## [247] 3.59387717 3.59566282 3.60118618 3.60743912 3.61081764 3.61830529 ## [253] 3.61920590 3.63497371 3.64535084 3.64644566 3.64762993 3.66218917 ## [259] 3.68273360 3.69026302 3.69282524 3.69707919 3.70227954 3.71241714 ## [265] 3.71456508 3.71911788 3.72191422 3.72324986 3.73555106 3.73848459 ## [271] 3.74105573 3.74124928 3.74224834 3.74409067 3.74990013 3.75026069 ## [277] 3.75157077 3.76078771 3.76684674 3.77532943 3.77896491 3.78630852 ## [283] 3.79307869 3.79528407 3.80231295 3.80864395 3.80917311 3.81168872 ## [289] 3.82383231 3.82475370 3.82641936 3.83483310 3.84006184 3.84199042 ## [295] 3.86177252 3.86884101 3.87260612 3.89260208 3.89902195 3.91013024 ## [301] 3.91167957 3.91442005 3.94111229 3.94618532 3.95384233 3.95794731 ## [307] 3.96033812 3.96147833 3.96423239 3.96758430 3.97076852 3.98080046 ## [313] 3.98180289 3.99086071 3.99654314 4.00366053 4.00427203 4.01152776 ## [319] 4.01483833 4.01769927 4.03498399 4.03714114 4.03977793 4.04165674 ## [325] 4.04456786 4.04749706 4.04884243 4.05424334 4.05550295 4.05827187 ## [331] 4.05980298 4.06234018 4.06454184 4.07206643 4.07249770 4.07347160 ## [337] 4.08444702 4.09323639 4.09725292 4.11146186 4.11883891 4.12312289 ## [343] 4.12976838 4.13109575 4.13181400 4.13435599 4.13569416 4.13944275 ## [349] 4.14159928 4.14977240 4.15633218 4.17958203 4.18685707 4.20894083 ## [355] 4.21046815 4.21849488 4.22002918 4.22681383 4.24158467 4.24291678 ## [361] 4.24452977 4.24483804 4.24694859 4.25149349 4.26241366 4.26353100 ## [367] 4.26537881 4.27169654 4.27259473 4.29362406 4.30122514 4.31082925 ## [373] 4.31167466 4.31467537 4.31510594 4.31661536 4.31964196 4.32038028 ## [379] 4.32875152 4.32943084 4.33792336 4.35105273 4.35517392 4.36944273 ## [385] 4.37345836 4.41200315 4.41901774 4.42326330 4.42460599 4.44212398 ## [391] 4.44840287 4.45401927 4.47378328 4.47720402 4.47939712 4.48878022 ## [397] 4.49716970 4.50197194 4.50391207 4.50657567 4.51902880 4.52645115 ## [403] 4.53247591 4.53468812 4.53482953 4.54365136 4.54954581 4.56260224 ## [409] 4.57224137 4.57794665 4.58052550 4.58072803 4.58397499 4.59353540 ## [415] 4.59509725 4.60551662 4.60716342 4.61148540 4.61218146 4.61377281 ## [421] 4.62726525 4.63051132 4.63104078 4.63169981 4.63261410 4.64245873 ## [427] 4.66852536 4.67245610 4.67445280 4.67847884 4.68730727 4.69370225 ## [433] 4.69544031 4.69851906 4.70503693 4.70704245 4.70758099 4.70984465 ## [439] 4.71275134 4.71766501 4.71833786 4.72243351 4.72464392 4.72600725 ## [445] 4.73624303 4.74287124 4.74492095 4.74687456 4.74785896 4.75184018 ## [451] 4.75475603 4.75847492 4.75893329 4.76492303 4.76798496 4.77010134 ## [457] 4.77290746 4.77378479 4.77742895 4.78192707 4.78387043 4.78756004 ## [463] 4.79443147 4.79802640 4.80293743 4.80642327 4.81269042 4.81490196 ## [469] 4.82033249 4.83411646 4.84330579 4.84802635 4.85340740 4.85440056 ## [475] 4.85868803 4.86327830 4.88033227 4.88875402 4.89051261 4.89938052 ## [481] 4.89991381 4.90433871 4.90940535 4.91618217 4.92062679 4.92257478 ## [487] 4.93440965 4.93606073 4.93710696 4.93752047 4.94320065 4.94703572 ## [493] 4.96096693 4.96155290 4.96359020 4.96893384 4.97280768 4.97352920 ## [499] 4.97361477 4.98093291 4.98764690 4.98930701 5.01436064 5.01590405 ## [505] 5.02203004 5.03089899 5.03261347 5.03518253 5.03573995 5.03700652 ## [511] 5.03786746 5.04160120 5.04882515 5.05472380 5.05582630 5.06869955 ## [517] 5.07111892 5.07563709 5.07847887 5.07871351 5.08200407 5.08968487 ## [523] 5.10602871 5.11427654 5.11610032 5.11720504 5.12242594 5.12737931 ## [529] 5.13529502 5.14257814 5.14953724 5.15403819 5.15437827 5.15636743 ## [535] 5.17124629 5.17182948 5.17361594 5.18097191 5.20072999 5.20401174 ## [541] 5.21033984 5.21157461 5.21338826 5.21403527 5.21913969 5.22166447 ## [547] 5.23311302 5.23486872 5.23667001 5.24314034 5.24492602 5.24869222 ## [553] 5.24969947 5.25390835 5.26459824 5.26591178 5.26811301 5.26925323 ## [559] 5.26967500 5.26973357 5.27727471 5.28549739 5.29277868 5.29504891 ## [565] 5.29519203 5.32248610 5.32340146 5.32721478 5.33055964 5.33655740 ## [571] 5.34051700 5.34362107 5.34576481 5.35445757 5.35681704 5.36114975 ## [577] 5.37899322 5.38140269 5.38332575 5.38905190 5.38922708 5.38991440 ## [583] 5.39459467 5.40108515 5.40562879 5.41615553 5.41821660 5.42410785 ## [589] 5.42967577 5.44313145 5.44638131 5.44720521 5.44871207 5.45000780 ## [595] 5.45804434 5.46477007 5.46639047 5.46773338 5.48333303 5.48343440 ## [601] 5.50064211 5.51600040 5.51612936 5.52061589 5.55551413 5.56155732 ## [607] 5.56489824 5.58664771 5.58704888 5.60334497 5.60417495 5.60707000 ## [613] 5.60981947 5.61294387 5.61657476 5.61757210 5.62216635 5.62712809 ## [619] 5.62856976 5.63526833 5.63675944 5.63913970 5.64413278 5.64416126 ## [625] 5.64747716 5.64940796 5.65461079 5.65951282 5.66049267 5.66487783 ## [631] 5.67770711 5.68451054 5.68467402 5.70118302 5.70454734 5.70682957 ## [637] 5.71586380 5.73513224 5.73780306 5.73884634 5.74218192 5.74341597 ## [643] 5.74412192 5.74572561 5.75066877 5.75439914 5.75470910 5.75694015 ## [649] 5.76002629 5.76850230 5.77866448 5.78135998 5.78209806 5.78337727 ## [655] 5.79135489 5.79656104 5.80973144 5.81139731 5.81306083 5.81797456 ## [661] 5.82000782 5.82559635 5.82593647 5.82709165 5.82753264 5.83113884 ## [667] 5.83165200 5.83869113 5.84208689 5.84468874 5.84624870 5.85303775 ## [673] 5.86923029 5.89724850 5.90010320 5.91043490 5.91726857 5.92179883 ## [679] 5.93182650 5.93638648 5.93638929 5.95051434 5.95075475 5.95815567 ## [685] 5.95968180 5.96425494 5.96844412 5.96948563 5.98474274 5.98896150 ## [691] 5.99142753 5.99523278 6.00618983 6.00841594 6.01345696 6.01837997 ## [697] 6.02241395 6.02368312 6.02535589 6.03350868 6.03616824 6.04533551 ## [703] 6.04546124 6.04821084 6.04954050 6.05014390 6.05071873 6.06262321 ## [709] 6.07808822 6.08824622 6.09197955 6.09472257 6.09805517 6.09915328 ## [715] 6.10398979 6.10889933 6.10923292 6.11466683 6.12683138 6.13372096 ## [721] 6.14206941 6.15071877 6.16018984 6.16077842 6.16351672 6.17143723 ## [727] 6.17627287 6.17698690 6.17703064 6.18586516 6.19100205 6.19307748 ## [733] 6.19312265 6.19691220 6.20119593 6.20696136 6.21309618 6.22295355 ## [739] 6.22678715 6.22881805 6.23675745 6.24273600 6.24441107 6.26107180 ## [745] 6.27108650 6.27866979 6.28142025 6.28740965 6.29032303 6.29316161 ## [751] 6.30224244 6.31003812 6.31135019 6.32479965 6.32611628 6.32689205 ## [757] 6.35118669 6.36491290 6.36609267 6.36698628 6.36833556 6.37750523 ## [763] 6.38220114 6.38296150 6.38536903 6.38829485 6.39605637 6.40456960 ## [769] 6.42202712 6.43056811 6.43662808 6.44223735 6.44541407 6.44575785 ## [775] 6.44599073 6.44887477 6.45978539 6.46008016 6.46092952 6.46209974 ## [781] 6.46447681 6.46936413 6.48954161 6.51149705 6.51416948 6.51449108 ## [787] 6.51507171 6.51947439 6.52135062 6.55405519 6.56569641 6.57200403 ## [793] 6.57587535 6.58764893 6.59156418 6.59874464 6.60223417 6.61626728 ## [799] 6.67472971 6.67637690 6.70076979 6.70385936 6.70588843 6.70821537 ## [805] 6.71438532 6.71486777 6.74864270 6.75772468 6.75862802 6.77556603 ## [811] 6.78239000 6.78658548 6.79563681 6.79745322 6.80381741 6.80676181 ## [817] 6.81233384 6.84330409 6.84639654 6.84781630 6.84913050 6.85534312 ## [823] 6.85625545 6.88140098 6.88630172 6.89308735 6.90958863 6.93905204 ## [829] 6.95035140 6.95337697 6.95438614 6.95705843 6.96595512 6.96749192 ## [835] 6.97214648 6.97456204 6.97576841 6.98011272 6.98290790 6.98814821 ## [841] 7.02666414 7.03014820 7.03184133 7.03567573 7.05022697 7.05612909 ## [847] 7.05782867 7.05801096 7.06431418 7.06793237 7.07348668 7.08166441 ## [853] 7.09184687 7.10109840 7.10117700 7.10712489 7.11902225 7.12380976 ## [859] 7.12681419 7.15421273 7.15805465 7.15955723 7.16535579 7.19144265 ## [865] 7.20589286 7.23062053 7.23626633 7.24081925 7.24607715 7.26355406 ## [871] 7.27216384 7.27240399 7.27326231 7.27628256 7.28165690 7.29529124 ## [877] 7.30779331 7.31382462 7.31663670 7.33180745 7.33415964 7.34037812 ## [883] 7.34145589 7.34210415 7.34639664 7.36293374 7.36385915 7.38751336 ## [889] 7.42351114 7.43017640 7.43302433 7.44505848 7.44691818 7.44869716 ## [895] 7.44971955 7.46046535 7.50258434 7.50846765 7.51078777 7.54003378 ## [901] 7.54229358 7.56005698 7.58320342 7.61066644 7.62763582 7.64726813 ## [907] 7.70451425 7.71212438 7.72072315 7.73360045 7.74620110 7.75175387 ## [913] 7.76154022 7.76163378 7.77531175 7.78736100 7.81436209 7.84170737 ## [919] 7.87805175 7.87821962 7.89493132 7.89659244 7.89808935 7.90581012 ## [925] 7.92187813 7.93985317 7.94908744 7.97127533 7.97300486 8.01476115 ## [931] 8.05113952 8.06137374 8.06196714 8.08958655 8.10065570 8.10558606 ## [937] 8.12946528 8.13263221 8.13605544 8.14484707 8.17159825 8.17173950 ## [943] 8.18650631 8.19702958 8.20204189 8.21500722 8.26565237 8.28487898 ## [949] 8.30022526 8.30567416 8.32036173 8.34096671 8.35540830 8.35995555 ## [955] 8.38107489 8.45061946 8.45375461 8.47527280 8.47829554 8.48691276 ## [961] 8.51706200 8.51792304 8.53986465 8.60379966 8.60520392 8.64246817 ## [967] 8.65223642 8.66820495 8.70710168 8.72744170 8.75814203 8.83194254 ## [973] 8.85374349 8.91274927 8.94438949 8.97339468 8.98391696 8.99563968 ## [979] 9.00031195 9.03191317 9.08389590 9.11407025 9.12064420 9.13455137 ## [985] 9.16504700 9.24551176 9.26144901 9.29219823 9.35076437 9.38678434 ## [991] 9.45730053 9.54655933 9.54951000 9.84013619 9.84762406 10.38252477 ## [997] 10.56312209 10.64636956 10.72641473 10.75056294
# Voltamos para a vírgula como separador decimal: options(OutDec = ',')
O que houve?!
O problema é que não há valores repetidos no conjunto de dados! Por isso, todos os \(1000\) valores são modais.
-
Uma maneira de evitar isto é definir a moda como o centro do intervalo mais curto que contém metade dos dados. Usamos a função
mlv
(most likely value):moda <- mlv(normal, method = 'venter') moda
## [1] 4,771471
-
Esta moda estimada pode nem estar no conjunto de dados:
moda %in% normal
## [1] FALSE
Mas o resultado de
mlv()
é útil, pois nos diz que, embora não haja valores repetidos, valores próximos de \(5\) são mais frequentes, como mostra o histograma.
6.2.3.1 Exercícios
-
Arrendonde os valores no vetor
normal
para \(2\) casas decimais e ache a(s) moda(s)com a função
mfv
, ecom a função
mlv
, usando o métodoventer
.
Considerando o histograma, qual das respostas você prefere? Por quê?
6.3 Formas de uma distribuição
- A forma do histograma mostra aspectos importantes da distribuição dos dados.
6.3.1 Distribuição Uniforme
-
Se o histograma tem todas as barras aproximadamente da mesma altura, dizemos que a distribuição é uniforme:
A distribuição uniforme não tem moda, já que todos os valores têm aproximadamente a mesma frequência.
6.3.2 Simetria
Se o histograma for simétrico (i.e., os lados esquerdo e direito são “espelhados”), dizemos que a distribuição é simétrica.
A distribuição normal do exemplo acima é simétrica.
A distribuição uniforme também é simétrica.
-
Para distribuições simétricas, a média, a mediana e a moda (quando existe e é única) são bem próximas.
-
Uma distribuição pode ser simétrica, mas ter duas (ou mais) modas diferentes:
Algumas distribuições não são simétricas, mas têm uma cauda longa à esquerda ou à direita.
Dependendo da cauda, as distribuições são chamadas de assimétricas à esquerda ou assimétricas à direita.
-
Um exemplo: receitas anuais (em milhões de dólares) de CEOs de grandes empresas:
## Rows: 500 ## Columns: 9 ## $ Rank <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16… ## $ Name <chr> "John H Hammergren", "Ralph Lauren", "Michael D Fasci… ## $ Company <chr> "McKesson", "Ralph Lauren", "Vornado Realty", "Kinder… ## $ `1-Year Pay ($mil)` <dbl> 131,190, 66,650, 64,405, 60,940, 55,790, 51,525, 50,1… ## $ `5 Year Pay ($mil)` <dbl> 285,020, 204,060, NA, 60,940, 96,110, 100,210, 90,300… ## $ `Shares Owned ($mil)` <dbl> 51,9, 5010,4, 171,7, 8582,3, 21,5, 47,3, 128,2, 155,8… ## $ Age <dbl> 53, 72, 55, 67, 59, 57, 55, 59, 61, 60, 59, 56, 63, 5… ## $ Efficiency <dbl> 121, 84, NA, NA, 138, 36, 12, NA, 91, 131, 150, NA, 1… ## $ `Log Pay` <dbl> 8,117901, 7,823800, 7,808920, 7,784902, 7,746556, 7,7…
-
Vamos usar apenas os nomes e os valores anuais:
-
Um histograma:
salarios %>% ggplot(aes(x = valor)) + geom_histogram(breaks = seq(0, 150, 2.5)) + scale_x_continuous(breaks = seq(0, 150, 10)) + labs(y = NULL)
É uma distribuição assimétrica à direita: a maior parte dos CEOs têm receitas anuais “baixas”, de menos de \(10\) milhões. À medida que examinamos valores maiores, a quantidade de CEOs vai diminuindo lentamente.
Observe que a longa cauda à direita “puxa” a média para um valor mais alto do que a mediana.
-
A moda, que corresponde à barra mais alta do histograma, é menor que a mediana (e que a média):
sumario <- salarios %>% summarise( moda = mlv(valor, method = 'venter'), mediana = median(valor), media = mean(valor) ) sumario
-
Em um boxplot, também é possível detectar a assimetria pela grande quantidade de outliers em um extremo:
salarios %>% ggplot(aes(y = valor)) + geom_boxplot() + scale_x_continuous(breaks = NULL) + scale_y_continuous(breaks = seq(0, 150, 10))
Com distribuições assimétricas à esquerda, a situação se inverte: a média é menor que a mediana, que é menor que a moda.
6.4 Re-expressão
Muitas vezes, é recomendável transformar a escala dos dados para que uma distribuição assimétrica se torne simétrica.
-
No exemplo das receitas dos CEOs, podemos tomar os logaritmos dos valores, em vez dos valores:
salarios_log %>% ggplot(aes(x = log_valor)) + geom_histogram(bins = 20) + labs( x = TeX('$\\log_{10}$ valor'), y = NULL )
## Warning: Removed 3 rows containing non-finite outside the scale range ## (`stat_bin()`).
O logaritmo de um número na base \(10\) é, essencialmente, a quantidade de dígitos do número, vista como uma grandeza contínua.
Logaritmos negativos vêm de valores entre \(0\) e \(1\).
Logaritmo zero vem do valor \(1\).
Valores iguais ou menores que zero não têm logaritmo definido.
-
Por isso a mensagem de aviso sobre \(3\) valores removidos. São valores iguais a zero:
Uma vantagem desta escala logarítmica é que podemos entender melhor o histograma. Os dados não estão amontoados de um lado só.
6.5 Medidas de posição
6.5.1 Quantis
Na seção sobre boxplots, falamos sobre quantis, que são medidas de posição.
-
Em R, a função
quantile
calcula quantis de um vetor:## 0% 25% 50% 75% 100% ## 0,00000 3,88500 6,96750 13,36125 131,19000
-
Você pode passar frações entre \(0\) e \(1\) para
quantile
. Por exemplo, para calcular o primeiro, o quinto, e o décimo percentis6 das receitas dos CEOs:## 1% 5% 10% ## 0,48695 1,48405 2,19400
6.6 Medidas de dispersão
Tão importantes quanto as medidas de centralidade são as medidas de dispersão (ou espalhamento).
Elas informam o quanto os dados variam.
6.6.1 Amplitude
Uma medida simples é a diferença entre o valor máximo e o valor mínimo.
-
Lembrando do nosso exemplo das idades dos alunos:
idades
## [1] 20 20 20 20 20 20 21 21 21 21 22 22 22 23 23 23 23 24 24 65
-
A função
range
retorna o mínimo e o máximo:range(idades)
## [1] 20 65
-
A amplitude destes dados é, então
## [1] 45
A diferença de idade entre o aluno mais novo e o mais velho é de \(45\) anos, um valor alto, por causa do velhinho.
6.6.2 IQR
Na seção sobre boxplots, também falamos sobre o intervalo interquartil (IQR).
-
No boxplot, é a altura da caixa. Para as idades dos alunos:
idades %>% as_tibble() %>% ggplot(aes(y = value)) + geom_boxplot() + scale_x_continuous(breaks = NULL) + scale_y_continuous(breaks = seq(20, 70, 5))
-
O IQR é a diferença entre o primeiro e o terceiro quartis:
summary(idades)
## Min. 1st Qu. Median Mean 3rd Qu. Max. ## 20,00 20,00 21,50 23,75 23,00 65,00
## [1] 3
IQR(idades)
## [1] 3
Ou seja, os \(50\%\) centrais dos alunos têm idade entre \(20\) e \(23\) anos, um IQR de \(3\).
É uma variação pequena, porém mais fiel à realidade do que a amplitude, que é alta por causa do velhinho.
Quanto maior o IQR, mais espalhados estão os dados.
6.6.3 Variância
-
Agora, vamos trabalhar com os pesos (kg) e alturas (m) de um time de basquete:
medidas <- tibble( altura = .025 * c(72, 74, 68, 76, 74, 69, 72, 79, 70, 69, 77, 73), peso = 0.45 * c(180, 168, 225, 201, 189, 192, 197, 162, 174, 171, 185, 210) ) medidas
summary(medidas$altura)
## Min. 1st Qu. Median Mean 3rd Qu. Max. ## 1,700 1,744 1,812 1,819 1,863 1,975
summary(medidas$peso)
## Min. 1st Qu. Median Mean 3rd Qu. Max. ## 72,90 77,96 84,15 84,53 89,10 101,25
A variância é a maneira mais usada de medir o espalhamento em torno da média.
Para calcular a variância das alturas e a variância dos pesos, precisamos calcular valores intermediários.
-
O desvio de um valor é a diferença entre o valor e a média. O desvio pode ser positivo ou negativo.
d_medidas <- medidas %>% mutate( d_altura = altura - mean(altura), d_peso = peso - mean(peso) ) d_medidas
-
Vamos calcular o desvio médio das alturas e o desvio médio dos pesos:
Não foi uma boa idéia. O desvio médio sempre é igual a zero.7 (O R pode mostrar algum valor diferente de zero por causa da precisão limitada dos números de ponto flutuante.)
-
Como resolver isto? Elevando os desvios ao quadrado:
Agora temos os desvios quadrados, que são todos positivos.
-
O desvio quadrado médio vai ser a variância:
Uma vantagem da variância é que outliers (que têm desvios quadrados maiores) contribuem mais do que elementos próximos à média (que têm desvios quadrados menores).
Uma desvantagem da variância é que a sua unidade é o quadrado da unidade dos valores.
Neste exemplo, as unidades são \(m^2\) e \(kg^2\)!
6.6.4 Desvio-padrão
É melhor trabalhar com a raiz quadrada da variância, que chamamos de desvio-padrão.
-
As unidades são as mesmas que as unidades dos dados.
-
Claro que o R tem funções para calcular isso:
var
esd
(standard deviation):medidas %>% summarize( altura_var = var(altura), altura_dp = sd(altura), peso_var = var(peso), peso_dp = sd(peso) )
Mas os valores são diferentes dos que calculamos. Por quê?
6.6.5 Definições
-
Para uma população com \(N\) elementos e média \(\mu\), a variância é
\[ \sigma^2 = \frac{\sum_{i=1}^N (x_i - \mu)^2}{N} \]
e o desvio-padrão é
\[ \sigma = \sqrt{\frac{\sum_{i=1}^N (x_i - \mu)^2}{N}} \]
-
Para uma amostra com \(n\) elementos e média \(\bar x\), a variância é
\[ s^2 = \frac{\sum_{i=1}^n (x_i - \bar x)^2}{n-1} \]
e o desvio-padrão é
\[ s = \sqrt{\frac{\sum_{i=1}^n (x_i - \bar x)^2}{n -1}} \]
Nós calculamos a versão populacional destas medidas.
R calcula a versão amostral destas medidas.
Reveja os cálculos e entenda a diferença.
Note, também, que as medidas populacionais são representadas por letras gregas — \(\mu\), \(\sigma^2\), \(\sigma\) —, enquanto as medidas amostrais são representadas por letras latinas — \(\bar x\), \(s^2\), \(s\).
Mais adiante no curso, você vai entender por que o denominador da variância amostral é \(n - 1\), em vez de \(n\).
Nada é por acaso, nem mesmo em Estatística.
6.6.6 Exercícios
Quando a variância e o desvio-padrão de um conjunto de dados são iguais a zero?
-
Mostre que o desvio médio de qualquer conjunto de valores é igual a zero.
Ou seja, considere o conjunto
\[ \{x_1, x_2, \ldots, x_n\} \]
e prove que
\[ \sum_{i = 1}^n (x_i - \bar x) = 0 \]
Manipule apenas as variáveis \(x_i\). Não use exemplos, pois eles não provam o enunciado geral.
Dica: lembre que \(\displaystyle \bar x = \frac{\sum_{i = 1}^n x_i}{n}\).
6.7 Coeficiente de variação
Em um conjunto de dados, o desvio-padrão é uma medida importante da variação dos dados.
Mas a unidade do desvio-padrão muda de um conjunto de dados para outro: alturas em metros, pesos em quilos etc.
Podemos eliminar as unidades expressando o desvio-padrão em termos da média.
O resultado é a fração \(\frac{\sigma}{\mu}\) (na população) ou \(\frac{s}{\bar x}\) na amostra.
Esta fração é o coeficiente de variação (CV).
O CV não tem unidades.
-
Para as alturas do exemplo dos jogadores de basquete:
A média das alturas é \(1{,}82\) metros.
O desvio-padrão das alturas é \(0{,}09\) metros.
O CV é aproximadamente \(0{,}0473\).
statip::cv(medidas$altura)
## [1] 0,04729982
Em outras palavras, para as alturas, um desvio-padrão corresponde a \(4{,}73\%\) da média.
-
Para os pesos:
A média dos pesos é \(84{,}53\) quilos.
O desvio-padrão dos pesos é \(8{,}31\) quilos.
O CV é aproximadamente \(0{,}0983\).
statip::cv(medidas$peso)
## [1] 0,09834649
Em outras palavras, para os pesos, um desvio-padrão corresponde a \(9{,}83\%\) da média.
Segundo estes valores, a variação dos pesos é cerca de \(2\) vezes maior do que a variação das alturas.
O coeficiente de variação sempre faz sentido para dados do nível racional (veja a definição) — i.e., dados onde o zero é absoluto.
Para dados apenas intervalares, o uso do CV pode levar a conclusões absurdas, como você terá chance de ver no exercício.
6.7.1 Exercícios
-
Considere o seguinte conjunto de temperaturas (em graus Celsius):
celsius <- c(0, 10, 20, 30, 40)
-
E as mesmas temperaturas (em graus Fahrenheit):
fahrenheit <- 9 * celsius / 5 + 32
-
Calcule para cada um dos dois vetores acima:
A média,
O desvio-padrão,
O coeficiente de variação.
As temperaturas são as mesmas (apenas em unidades diferentes), mas os CVs são diferentes. Por quê?
-
Agora, convertemos as mesmas temperaturas para a escala Kelvin:
kelvin <- celsius + 273.15
-
E para a escala Rankine:
rankine <- fahrenheit + 459.67
-
Calcule para cada um dos dois vetores acima:
A média,
O desvio-padrão,
O coeficiente de variação.
-
Compare:
As médias de
celsius
ekelvin
,As médias de
fahrenheit
erankine
,Os desvios-padrão de
celsius
ekelvin
,Os desvios-padrão de
fahrenheit
erankine
,Os coeficientes de variação de
kelvin
erankine
.
Explique o que houve.
6.8 Escores-padrão
Para qualquer conjunto de dados, a unidade usada é uma escolha arbitrária.
Para alturas, por exemplo, podemos usar metros, centímetros, pés, polegadas etc.
A escolha de unidades é tão arbitrária que podemos escolher uma unidade (que dificilmente vai ter nome) que faça com que a média do conjunto de dados seja zero e que o desvio-padrão seja igual a \(1\).
Isto equivale a tomar, como unidade, o desvio-padrão acima da média.
Os valores, nesta nova unidade, são chamados de escores-padrão.
Dizemos que os valores foram padronizados.
Vamos usar as alturas dos jogadores de basquete.
-
Para fazer a altura média virar zero, basta subtrair, de cada altura, a altura média:
alturas <- medidas$altura mean(alturas)
## [1] 1,81875
## [1] 0
-
Para fazer o desvio-padrão ser igual a \(1\), basta dividir estes valores pelo desvio-padrão dos dados originais:
sd(alturas)
## [1] 0,08602656
## [1] 1
-
Tome, por exemplo, o seguinte jogador:
altura <- alturas[1] altura
## [1] 1,8
## [1] -0,217956
Faça as contas: o valor da altura padronizada deste jogador significa que a altura dele está \(0{,}217956\) desvios-padrão abaixo da altura média.
-
No geral:
Se a média for \(\bar x\), e
Se o desvio-padrão for \(s\),
Os escores-padrão \(z_i\) vão ser \[ z_i = \frac{x_i - \bar x}{s} \]
-
Em R, a função
scale
faz isso:medidas <- medidas %>% mutate(altura_padronizada = scale(altura)[,1]) medidas %>% select(altura, altura_padronizada)
mean(medidas$altura_padronizada)
## [1] -0,000000000000000004610683
sd(medidas$altura_padronizada)
## [1] 1
A função
scale
foi feita para receber e retornar matrizes. Como estamos trabalhando com vetores, usamosscale(altura)[,1]
para tomar apenas a primeira (e única) coluna do resultado.
6.8.1 Exercícios
Por que, quando calculamos as alturas deslocadas divididas pelo desvio-padrão das alturas, temos certeza de que a média dos valores resultantes não mudou?
Padronize os pesos dos jogadores de basquete.
Confira a média e o desvio-padrão dos pesos padronizados.
Crie um scatterplot de peso por altura.
Crie um scatterplot de peso padronizado por altura padronizada.
Compare os dois scatterplots. O que muda de um para outro?
6.9 Teorema de Tchebychev
Grosso modo, quanto mais alto o desvio-padrão, maior é a distância da média até os valores.
Ou seja, quanto menor o desvio-padrão, maior é a proporção de valores que estão próximos à média.
-
O teorema de Tchebychev quantifica esta idéia:
Em qualquer distribuição, a proporção de valores dentro de \(\pm k\) desvios-padrão \((k > 1)\) da média é de, no mínimo \[ 1 - \frac{1}{k^2} \]
6.9.1 Exemplo
-
Lembre-se do conjunto de dados sobre os totais de horas de sono de diversos mamíferos:
-
Média e desvio-padrão:
media <- mean(df$value) media
## [1] 10,43373
dp <- sd(df$value) dp
## [1] 4,450357
-
Qual a proporção de espécies que estão a \(1{,}3\) ou menos desvios-padrão de distância da média?
k <- 1.3 inicio <- media - k * dp inicio
## [1] 4,648271
fim <- media + k * dp fim
## [1] 16,2192
-
O teorema diz que no mínimo a seguinte proporção das espécies está dentro deste intervalo:
proporcao_teorema <- 1 - 1 / k^2 proporcao_teorema
## [1] 0,408284
-
Graficamente:
-
Vamos conferir:
## [1] 83
## [1] 64
proporcao_real <- especies_intervalo / total_especies proporcao_real
## [1] 0,7710843
Como o teorema usa apenas a média e o desvio-padrão, e mais nenhuma informação sobre a distribuição dos valores — forma, simetria etc. — o que ele garante é, muitas vezes, mais fraco do que a realidade.
Neste exemplo, o teorema garantia no mínimo \(40{,}83\%\) das espécies a \(1{,}30\) ou menos desvios-padrão de distância da média.
A proporção verdadeira é \(77{,}11\%\) das espécies.
O teorema está certo (claro), mas, sem mais informações sobre a distribuição dos dados, o teorema não pode ser mais preciso.