Comparing all quantiles of two distributions simultaneously
Summary: A new function in the WRS package compares many quantiles of two distributions simultaneously while controlling the overall alpha error.
When comparing data from two groups, approximately 99.6% of all psychological research compares the central tendency (that is a subjective estimate).
In some cases, however, it would be sensible to compare different parts of the distributions. For example, in reaction time (RT) experiments two groups may only differ in the fast RTs, but not in the long. Measures of central tendency might obscure or miss this pattern, as following example demonstrates.
Imagine RT distributions for two experimental conditions (“black” and “red”). Participants in the red condition have some very fast RTs:
set.seed(1234) RT1 <- rnorm(100, 350, 52) RT2 <- c(rnorm(85, 375, 55), rnorm(15, 220, 25)) plot(density(RT1), xlim=c(100, 600)) lines(density(RT2), col=2) |
A naïve (but common) approach would be to compare both distributions with a t test:
t.test(RT1, RT2)
######################
data: RT1 and RT2
t = -0.3778, df = 168.715, p-value = 0.706
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-22.74478 15.43712
sample estimates:
mean of x mean of y
341.8484 345.5022Results show that both groups do not differ in their central tendency.
Now let’s do the same with a new method!
The function qcomhd from the WRS package compares user-defined quantiles of both distributions using a Harrell–Davis estimator in conjunction with a percentile bootstrap. The method seems to improve over other methods: “Currently, when there are tied values, no other method has been found that performs reasonably well. Even with no tied values, method HD can provide a substantial gain in power when q ≤ .25 or q ≥ .75 compared to other techniques that have been proposed”. The method will be described in the forthcoming paper “Comparing two independent groups via the upper and lower quantiles” by Wilcox and Erceg-Hurn.
You can use the function as soon as you install the latest version (17) of the WRS package:
install.packages("WRS", repos="http://R-Forge.R-project.org")
Let’s compare all percentiles from the 10th to the 90th:
qcomhd(RT1, RT2, q = seq(.1, .9, by=.1))
The graphical output shows how groups differ in the requested quantiles, and the confidence intervals for each quantile:
The text output (see below) also shows that groups differ significantly in the 10th, the 50th, and the 60th percentile. The column labeled ‘’.value’’shows the p value for a single quantile bootstrapping test. As we do multiple tests (one for each quantile), the overall Type 1 error (defaulting to .05) is controlled by the Hochberg method. Therefore, for each p value a critical p value is calculated that must be undercut (see column ‘_crit’. The column ‘signify’ marks all tests which fulfill this condition:
q n1 n2 est.1 est.2 est.1.est.2 ci.low ci.up p_crit p.value signif
1 0.1 100 100 285.8276 218.4852 67.342399 41.04707 84.67980495 0.005555556 0.001 *
2 0.2 100 100 297.5061 264.7904 32.715724 -16.52601 68.80486452 0.025000000 0.217
3 0.3 100 100 310.8760 320.0196 -9.143593 -33.63576 32.95577465 0.050000000 0.589
4 0.4 100 100 322.5014 344.0439 -21.542475 -40.43463 0.03938696 0.010000000 0.054
5 0.5 100 100 331.4413 360.3548 -28.913498 -44.78068 -9.11259108 0.007142857 0.006 *
6 0.6 100 100 344.8502 374.7056 -29.855369 -46.88886 -9.69559705 0.006250000 0.005 *
7 0.7 100 100 363.6210 388.0228 -24.401872 -47.41493 -4.13498039 0.008333333 0.016
8 0.8 100 100 385.8985 406.3956 -20.497097 -47.09522 2.23935390 0.012500000 0.080
9 0.9 100 100 419.4520 444.7892 -25.337206 -55.84177 11.49107833 0.016666667 0.174To summarize, we see that we have significant differences between both groups: the red group has significantly more faster RTs, but in their central tendency longer RTs.
Recommendations for comparing groups:
- Always plot the densities of both distributions.
- Make a visual scan: Where do the groups differ? Is the central tendency a reasonable summary of the distributions and of the difference between both distributions?
- If you are interested in the central tendency, think about the test for trimmed means, as in most cases this describes the central tendency better than the arithmetic mean.
- If you are interested in comparing quantiles in the tails of the distribution, use the qcomhd function.
The Evolution of Correlations
This is the evolution of a bivariate correlation between two questionnaire scales, “hope of power” and “fear of losing control”. Both scales were administered in an open online study. The video shows how the correlation evolves from r = .69*** (n=20) to r = .26*** (n=271). It does not stabilize until n = 150.
Data has not been rearranged – it is the random order how participants dropped into the study. This had been a rather extreme case of an unstable correlation – other scales in this study were stable right from the beginning. Maybe this video could help as an anecdotal caveat for a careful interpretation of correlations with small n’s (and with ‘small’ I mean n < 100) …
The evolution of correlations from Felix Schönbrodt on Vimeo.
Range restrictions for the correlations of 3 variables
A little follow up to my testosterone comment (written in German):
When three variables are correlated to each other, and two of the three correlations are known, the range for the third correlation is restricted according to this formula (Olkin, 1981):
![]()
Now comes the new part: here’s the graphical representation of that range restriction:

As one can see, one, or both of the two given correlations have to be fairly high to imply a positive third correlation.
Olkin, I. (1981). Range restrictions for product-moment correlation matrices. Psychometrika, 46, 469-472. doi:10.1007/BF02293804Weighted t-Test in R
Although there is a weighted.mean function in R, so far I couldn’t find a implementation of weighted.var and weighted.t.test – here they are (the weighted variance is from Gavin Simpson, found on the R malining list):
# weighted variance, inspired by a function from Gavin Simpson on R-Help var.wt <- function(x, w, na.rm = FALSE) { if (na.rm) { w <- w[i <- !is.na(x)] x <- x[i] } sum.w <- sum(w) return((sum(w*x^2) * sum.w - sum(w*x)^2) / (sum.w^2 - sum(w^2))) } weighted.t.test <- function(x, w, mu, conf.level = 0.95, alternative="two.sided", na.rm=TRUE) { if(!missing(conf.level) & (length(conf.level) != 1 || !is.finite(conf.level) || conf.level < 0 || conf.level > 1)) stop("'conf.level' must be a single number between 0 and 1") if (na.rm) { w <- w[i <- !is.na(x)] x <- x[i] } # to achieve consistent behavior in loops, return NA-structure in case of complete missings if (sum(is.na(x)) == length(x)) return(list(estimate=NA, se=NA, conf.int=NA, statistic=NA, df=NA, p.value=NA)) # if only one value is present: this is the best estimate, no significance test provided if (sum(!is.na(x)) == 1) { warning("Warning weighted.t.test: only one value provided; this value is returned without test of significance!", call.=FALSE) return(list(estimate=x[which(!is.na(x))], se=NA, conf.int=NA, statistic=NA, df=NA, p.value=NA)) } x.w <- weighted.mean(x,w, na.rm=na.rm) var.w <- var.wt(x,w, na.rm=na.rm) df <- length(x)-1 t.value <- sqrt(length(x))*((x.w-mu)/sqrt(var.w)) se <- sqrt(var.w)/sqrt(length(x)) if (alternative == "less") { pval <- pt(t.value, df) cint <- c(-Inf, x.w + se*qt(conf.level, df) ) } else if (alternative == "greater") { pval <- pt(t.value, df, lower.tail = FALSE) cint <- c(x.w - se * qt(conf.level, df), Inf) } else { pval <- 2 * pt(-abs(t.value), df) alpha <- 1 - conf.level cint <- x.w + se*qt(1 - alpha/2, df)*c(-1,1) } names(t.value) <- "t" return(list(estimate=x.w, se=se, conf.int=cint, statistic=t.value, df=df, p.value=pval)) } |
Bullshit-Bingo: Wie “Testosteron” Manager beeinflusst
.. oder: die Dekonstruktion einer “wissenschaftlichen” Studie und der dazugehörigen Pressemeldung
Folgendes war am 1.12.2011 im Handelsblatt zu lesen:
Außerdem wird die Autorin Kai Li folgendermaßen zitiert: „Junge männliche CEOs mit viel Testosteron im Blut scheinen einfach kampfeslustiger zu sein.“
Was verbirgt sich hinter dieser knackigen Headline? Man könnte denken: “Fantastisch! Da haben diese findigen Forscher doch tatsächlich bei CEOs Testosteron gemessen! Ich habe zwar keine Ahnung wie die es geschafft haben von mehreren tausend Managern Speichelproben zu nehmen, aber ich bin beeindruckt.”
Ein kurzer Blick in die Originalpublikation verrät allerdings schnell einiges über die tatsächliche Qualität der Studie:
Therefore, we proxy testosterone by male CEO age.
Aha. Statt Testosteron zu messen, haben sie also das Alter der Manager gemessen, als “Proxy” für Testosteron. Als Argument ziehen sie heran, dass das Testosteronlevel im Durchschnitt mit dem Alter abnimmt. Um die Studie in einem Satz zusammenzufassen: Levi, Li, und Zhang haben herausgefunden, dass jüngere CEOs (< 50 Jahre) mit einer größeren Wahrscheinlichkeit ein Angebot bei M&As zurückziehen (was als aggressives Verhalten interpretiert wird).
Alter als Proxy für Testosteron?
Es zeigt sich also eine negative Korrelation zwischen Alter und Testosteron-Level von ca. r = -.33. Allerdings ist für differentielle Fragestellungen dieser allgemeine Trend relativ uninteressant – viel wichtiger ist die interindividuelle Streuung innerhalb einer Altersgruppe. Auch hier lohnt sich ein Blick in die Originalpublikation (Harman et al., 2001). Diese Grafik wurde im Testosteron-Artikel abgebildet – ein klarer Alterstrend:
Copyright © 2001 The Endocrine Society. Used with permission.
Ein Blick in die dazugehörigen Scatterplots (S. 725) offenbart jedoch eine enorme Streuung innerhalb jeder Altersgruppe:
Copyright © 2001 The Endocrine Society. Used with permission.
Copyright © 2001 The Endocrine Society. Used with permission.
Hier kann man sehr klar erkennen, dass es relativ wahrscheinlich ist, dass ein konkreter älterer CEO (> 50 Jahre) einen höheren Testosteronspiegel hat als ein jüngerer CEO – insbesondere wenn man sich die Grafiken im Altersbereich der untersuchten Manager (46 – 64 Jahre) anschaut. Eine kleine Simulationsstudie zeigt, dass bei der vorgefundenen Korrelation (und der gegebenen Varianzeinschränkung dass nur CEOs im Alter von 46 bis 64 in der Stichprobe waren) die Wahrscheinlichkeit ca. 39% beträgt, dass ein CEO > 50 Jahre einen höheren T-Wert hat als ein CEO < 50 Jahre (50% wäre reines Zufallsniveau). Daran sieht man, dass trotz des linearen Trends die interindividuellen Schwankungen beträchtlich sind, und das Alter somit ein schlechter Proxy für differentielle Fragestellungen ist.
Wie groß ist der Effekt des Alters (nicht des Testosterons …) darauf, dass ein Angebot zurückgezogen wird?
Laut Korrelationstabelle ist die bivariate Korrelation zwischen Prädiktor und Kriterium r = .10 bzw. .12. Das ist nach Cohen (1992) ein “trivialer Effekt”. Fragt man sich wie viel Varianz im Bieterverhalten durch Alter aufgeklärt wird, muss man diese Korrelationen quadrieren. Ergebnis: Das Alter kann max. 1.4% im Bieterverhalten aufklären. Wenn in den multiplen Regressionen (ab Tabelle 3) noch für andere Variablen kontrolliert wird (z.B. Größe der Firmen), sinkt die Effektstärke des Alters auf r = .04 und der Aufklärungswert auf 1.6 Promille!
Wow. Das ist ja mal eine Schlagzeile wert…
“Triangulierung” der eigentlichen Korrelation?
Hier wird scheinbar der Versuch gemacht, eine gewünschte Korrelation X (Testosteron) <–> Y (Aggressives Verhalten) durch die Kenntnis von zwei anderen Korrelationen zu ergründen, nämlich X <–> M (Alter), und M <–> Y.
Wenn man ein Set an drei Variablen hat und zwei der Korrelationen (Korrelation A: X<–>M und Korrelation B: M<–>Y) bekannt sind, dann gibt es tatsächlich Einschränkung wie die Variablen X und Y (Korrelation C) noch miteinander korreliert sein können. Wenn die beiden Korrelationen A und B sehr hoch sind, dann muss die Korrelation C auch positiv sein.
Ist das nun ein gültiges Argument, Alter als Proxy für T zu nehmen? Es kommt auf die Höhe der Korrelationen an.
Das Werte von Korrelationen dreier Variablen müssen folgende Ungleichung erfüllen:
1 + 2*r_xy*r_xz*r_yz – r_xy² – r_xz² – r_yz² >= 0
Umformuliert lässt sich die “range restriction” einer Korrelation bei zwei bekannten Korrelationen mit folgender Formel berechnen (Olkin, 1981):
![]()
[UPDATE: hier ist eine graphische Darstellung dieser Relation zu finden]
Bei den gegebenen Werten von r = .33 zwischen Alter und T, sowie ca. r = .10 für Alter und aggressives Vh. lässt sich nun der mögliche Spielraum der eigentlich interessanten (nicht gemessen Korrelation) zwischen T und aggressiven Verhalten angeben. Die Korrelation kann zwischen -.91 und + .97 liegen!
Daraus folgt ganz klar, dass aus den berichteten Daten nichts über den Zusammenhang von Testosteron und Managerverhalten folgt!
Alternativerklärungen
Nun ist es durchaus nicht unüblich, sich durch “proxies” an latente (oder schwer messbare) Variablen heranzutasten. Allerdings sollte man sich immer bewusst sein, dass man nicht den eigentlichen Einflussfaktor misst, und das mit ensprechender Bescheidenheit kommunizieren. Gerade in diesem Punkt jedoch zeigen die Autoren eine bemerkenswerte Naivität (oder auch eine bemerkenswerte Unverfrorenheit). Abgesehen von wenigen Absätzen zum Thema “Alter statt Hormon” argumentieren sie beständig, als ob sie tatsächlich den Einfluss von Hormonen gemessen hätten:
“Hormones and Completion of Mergers and Acquisitions (p. 1) . [...]. The Hormone Effect in M&As (p. 12) [...] This is a very striking finding as it strongly supports an association between testosterone, as proxied by male CEO age, and M&As. (p. 12)”, etc.
Nun lässt die Datenlage ja durchaus einige Alternativerklärungen zu. So könnte man sich überlegen, welche anderen Variablen denn noch so mit dem Alter korrelieren (außer Testosteron). Ich habe mal ca. 10 Sekunden über diese Frage nachgedacht und bin zu folgenden (mehr oder weniger plausiblen) Alternativerklärungen gekommen:
• Ältere Manager gehören einer anderen Kohorte als die jüngeren Manager an. Es gibt Werteunterschiede zwischen beiden Generationen (ältere Manager legen Wert auf faire Verhandlungen, während jüngere durch eine neoliberale Wertehaltung aggressiver an die Sache rangehen)
• Beide Generationen von Managern haben unterschiedliche Ausbildungen durchlaufen und haben dadurch andere Verhandlungsstrategien.
• Fluide Intelligenz nimmt mit den Alter ab. Dadurch haben ältere Manager einen Nachteil in den Verhandlungen.
• Kristalline Intelligenz nimmt mit den Alter zu. Dadurch haben ältere Manager einen Vorteil in den Verhandlungen.
• Vermutlich haben die älteren Manager auch eine längere Zeit in einer Ehe verbracht (“Therefore, we proxy ‘years in marriage’ by male CEO age.”). Dies hat sie verweichlicht und macht sie so zu schwachen Verhandlern. Übrigens: in meinen eigenen Studien beträgt die Korrelation zwischen Alter und “Beziehungsdauer in der aktuellen Beziehung” um die .70 – also ein viel stärkerer Zusammenhang als Alter und T.
• Muskelkraft nimmt mit dem Alter ab (“Therefore, we proxy ‘trizeps strenght’ by male CEO age.”). Nach der Embodiment-Theorie haben muskulär schwache Verhandler auch eine psychologisch schwache Verhandlungsposition.
• Die Menge an Haupthaar nimmt mit dem Alter ab. Schütteres Haar weckt beim Gegenüber die Assoziation von Alter, Schwäche und Gebrechlichkeit (s. Broschüre Procter & Gamble, 2009), was die jüngeren Verhandler zu einem aggressiveren Vorgehen verleitet.
Alle diese Erklärungen passen vermutlich genauso gut zu den vorhandenen Daten wie die in dem Artikel dargestellte Story. Es wäre sicherlich ein großer Spaß, den Artikel umzuschreiben (auf Basis exakt der selben Daten!), z.B.: “Deal or no deal: Baldiness and the mergers and acquisitions game”.
Testosteron und Verhalten (Jetzt neu – diesmal mit ‘echtem’ Testosteron!!)
Es gibt tatsächlich Zusammenhänge zwischen Testosteron, Aggressivität, und Wettbewerb. So wurde in einer klassischen Studie z.B. gezeigt dass der Testosteronspiegel nach einem gewonnen Tennismatch ansteigt (Booth, Shelley, Mazur, & Kittok, 1989). Allerdings ist der Effekt von Testosteron auf Maße von Aggression und Dominanz alles andere als klar und deutlich: in einer Zusammenfassung von 13 Studien (Archer, 2006) zeigt sich gerade mal eine durchschnittliche gewichtete Korrelation von r = .124 zwischen Testosteronlevel und Dominanzmaßen, was nach Cohen (1992) gerade noch einem kleinen Effekt entspricht (an der Grenze zur Trivialität). Der Zusammenhang zu Aggression wurde in einer Meta-Analyse von 45 Studien mit r = .14 beziffert.
Und ja: alle diese Studien haben tatsächlich Testosteron gemessen!
Möglicherweise haben Levi und Kollegen also sogar recht mit ihrer Hormon-Hypothese. So wie sie es gemacht haben lässt sich das jedoch sicherlich nicht untersuchen!
Der vor Testosteron strotzende Wirtschaftskrieger
Das aktuelle Märchen mit dem Label “Testosteron” wird natürlich von der Presse bereitwillig aufgenommen. Möglicherweise liegt es daran, dass sich Manager gerne selbst als testosterongeschwängerte Krieger im täglichen Kampf der Konzerne sehen, und sich in ihren Kleine-Jungen-Fantasien als “weiße Ritter” auf ihr Pferd schwingen, um heroisch in einer “Abwehrschlacht” eine feindliche Übernahme abwenden können.
Fazit: Das Alter kann gerade einmal zwischen 1 Prozent und 1 Promille des Bieterverhaltens in M&As aufklären. Testosteron hat vermutlich nichts mit den vorgelegten Daten zu tun (zumindest kann man keinerlei Aussage über Testosteron treffen). Diese Studie hat definitiv nicht das Prädikat “wissenschaftlich” verdient, und ich frage mich wie so etwas ernsthaft in einer wissenschaftlichen Zeitschrift publiziert werden kann.
Zum Handelsblatt-Artikel ist lobend anzumerken, dass der Autor erwähnt hat dass nicht Testosteron, sondern Alter gemessen wurde. da sich ein Wissenschaftsredakteur jedoch auf die Validität von Ergebnissen in einem peer-reviewed journal verlassen könne sollte ist die Kritik ganz klar beim Originalartikel anzusetzen.
Nach allen sinnvollen Maßstäben sind die Aussagen “This is a very striking finding as it strongly supports an association between testosterone, as proxied by male CEO age, and M&As. (Levi et al., 2011), als auch “Drei Forscher zeigen jetzt: Der Botenstoff entscheidet auch in der Unternehmerwelt über Erfolg oder Missverfolg.” (Handelsblatt, 2011) schlicht und einfach falsch.
Literatur
Hier findet sich die Originalpublikation, wohl erschienen in dem Magazin Management Science (oder vielleicht besser: Management “Science”): Levi, M., Li, K., & Zhang, F. (2010). Deal or no deal: Hormones and the mergers and acquisitions game. Management Science.
Und hier noch etwas Ergänzungslektüre:
Als Überblick und Einstieg in das Thema sei wärmstens der Überblicksartikel von John Archer empfohlen. Er beschreibt auch den genauen Mechanismus (die “challenge hypothesis”), wie sich Testosteron vermutlich auf Verhalten auswirkt – jenseits von “männliche CEOs mit viel Testosteron im Blut scheinen einfach kampfeslustiger zu sein.“
Archer, J. (2006). Testosterone and human aggression: An evaluation of the challenge hypothesis. Neuroscience & Biobehavioral Reviews, 30, 319-345.
Das ist die Studie, die den Alterstrend vom T-Level zeigt:
Harman, S. M., Metter, E. J., Tobin, J. D., Pearson, J., & Blackman, M. R. (2001). Longitudinal effects of aging on serum total and free testosterone levels in healthy men. Journal of Clinical Endocrinology & Metabolism, 86, 724 -731. doi:10.1210/jc.86.2.724
Und hier noch zwei Studien zur Ergänzung:
Booth, A., Shelley, G., Mazur, A., G., T., & Kittok, R. (1989). Testosterone, and winning and losing in human competition. Hormones and Behavior, 23, 556–571.
Schultheiss, O. C., & Rohde, W. (2002). Implicit power motivation predicts men’s testosterone changes and implicit learning in a contest situation. Hormones and Behavior, 41, 195-202.
Die Berechnung der Abhängigkeiten von 3 Korrelationen findet sich hier:
Leung, C.-K., & Lam, K. (1975). A note on the geometric representation of the correlation coefficients. The American Statistician, 29, 128-130. doi:10.2307/2683440
Olkin, I. (1981). Range restrictions for product-moment correlation matrices. Psychometrika, 46, 469-472. doi:10.1007/BF02293804
Wilcox’s Robust Statistics: A new R package
Recently I started to build a new package for R containing Wilcox’ collection of functions for robust statistics.
Wilcox provides 700+ functions for robust statistics, including:
- robust correlations (e.g. percentage bend correlation)
- robust measures of location and mean differences (e.g. Yuen’s test, trimmed mean test with bootstrapping)
- bootstrapping routines for many indices. Using bootstrapping, asymmetric and non-parametric confidence intervals can be calculated
- etc …
I’ve simply put Wilcox’ functions into a package, so that the environment isn’t cluttered with 700+ functions. I also started to add some help functions (but until now there are really few).
The package is hosted on R-Forge. You can install the package directly in R by typing:
install.packages("WRS", repos="http://R-Forge.R-project.org")
Persoc.net
After months of work we finally released our homepage persoc.net. “Persoc” is a reasearch group funded by the DFG (German Research Foundation) that worked for 1.5 years on a new model of how to conceptualize the interplay of personality processes and social relationships.
In September 2007 a group of young researchers who repeatedly met at conferences realized that they were all fascinated by the complex interplay of personality and social relationships. While we studied the effects of personality on very different social processes (e.g., zero acquaintance judgments, group formation, friendship development, mate choice, relationship maintenance), we shared a strong focus on observing real-life phenomena and implementing advanced methods to analyze our data. Since the official start of Persoc in late 2008, several meetings and workshops have deepened both, our interconnectedness as well as our understanding and interest in personality and social relationships.
Persoc.net is one outcome of this great collaboration – we believe it is a unique and very helpful resource for all researchers who want to study the interplay of personality and social relationships. For example, extensive informations about possible research designs are provided (e.g. ego-centered networks, half- and full-block designs, round robin groups), as well as short tutorials about on to calculate the statistics in each design. First of all, of course, you shouldn’t miss the excellent introduction into the topic: the theoretical framework of persoc. If you do research yourself in the intersection of personality and social relationships, don’t hesitate to register yourself at the community site: you can post a profile of yourself and your research on persoc.net and get in contact with other researchers on that topic.
Persoc.net is dynamic and ever-growing site, and we hope it will be a useful resource for many researchers!


