Mam wykres punktowy, który ma wielkość próby równą liczbie osób na osi x i medianę wynagrodzenia na osi y, próbuję dowiedzieć się, czy wielkość próby ma jakikolwiek wpływ na medianę wynagrodzenia.
Oto fabuła:
Jak interpretować ten wątek?
Mam wykres punktowy, który ma wielkość próby równą liczbie osób na osi x i medianę wynagrodzenia na osi y, próbuję dowiedzieć się, czy wielkość próby ma jakikolwiek wpływ na medianę wynagrodzenia.
Oto fabuła:
Jak interpretować ten wątek?
Odpowiedzi:
„Dowiedz się” oznacza, że eksplorujesz dane. Formalne testy byłyby zbędne i podejrzane. Zamiast tego zastosuj standardowe techniki analizy danych eksploracyjnych (EDA), aby ujawnić, co może być w danych.
Te standardowe techniki obejmują reekspresję , analizę resztkową , niezawodne techniki („trzy R” EDA) i wygładzanie danych, jak opisano w Johnie Tukey w jego klasycznej książce EDA (1977). Jak przeprowadzić niektóre z nich opisane są w moim poście w Box-Cox, podobnie jak transformacja dla zmiennych niezależnych? oraz w regresji liniowej, kiedy właściwe jest użycie dziennika zmiennej niezależnej zamiast wartości rzeczywistych? , między innymi .
Rezultatem jest to, że wiele można zobaczyć, przechodząc na osie log-log (skutecznie ponownie wyrażając obie zmienne), wygładzając dane niezbyt agresywnie i badając resztki wygładzania, aby sprawdzić, co mogło zostać pominięte, jak to zilustruję.
Oto dane pokazane z wygładzeniem, które - po zbadaniu kilku wygładzeń o różnym stopniu wierności względem danych - wydaje się być dobrym kompromisem między zbyt dużym i zbyt małym wygładzaniem. Wykorzystuje Loess, dobrze znaną, solidną metodę (nie ma na nią silnego wpływu pionowych punktów odstających).
Siatka pionowa jest w krokach co 10 000. Gładka robi sugerować jakąś odmianę Grad_median
z próbki wielkości: wydaje się spadać jako przykładowe rozmiary zbliżyć 1000. (Końce gładkie nie są godne zaufania - szczególnie w przypadku małych próbek, gdzie oczekiwane jest błąd próbkowania być stosunkowo duży - tak don nie wczytuje się w nie za dużo.) To wrażenie prawdziwego spadku jest wspierane przez (bardzo szorstkie) pasma pewności rysowane przez oprogramowanie wokół gładkości: jego „wiggles” są większe niż szerokości pasm.
Interesuje nas (a) czy istnieją dodatkowe wzorce zmienności wraz ze zmianami wielkości próby oraz (b) czy warunkowe rozkłady odpowiedzi - pionowe rozkłady pozycji punktów - są prawdopodobnie podobne we wszystkich wartościach wielkości próby, lub czy niektóre ich aspekty (np. ich rozkład lub symetria) mogą się zmienić.
W związku z tym to proste streszczenie:
mediana wynagrodzenia jest około 10 000 niższa dla próbek o wielkości zbliżonej do 1000
odpowiednio wychwytuje relacje pojawiające się w danych i wydaje się utrzymywać jednolicie we wszystkich głównych kategoriach. To, czy jest to istotne - to znaczy, czy stanąłoby w obliczu dodatkowych danych - można ocenić jedynie poprzez zebranie tych dodatkowych danych.
Dla tych, którzy chcieliby sprawdzić tę pracę lub przejść dalej, oto R
kod.
library(data.table)
library(ggplot2)
#
# Read the data.
#
infile <- "https://raw.githubusercontent.com/fivethirtyeight/\
data/master/college-majors/grad-students.csv"
X <- as.data.table(read.csv(infile))
#
# Compute the residuals.
#
span <- 0.6 # Larger values will smooth more aggressively
X[, Log.residual :=
residuals(loess(log(Grad_median) ~ I(log(Grad_sample_size)), X, span=span))]
#
# Plot the data on top of a smooth.
#
g <- ggplot(X, aes(Grad_sample_size, Grad_median)) +
geom_smooth(span=span) +
geom_point(aes(fill=Major_category), alpha=1/2, shape=21) +
scale_x_log10() + scale_y_log10(minor_breaks=seq(1e4, 5e5, by=1e4)) +
ggtitle("EDA of Median Salary vs. Sample Size",
paste("Span of smooth is", signif(span, 2)))
print(g)
span <- span * 2/3 # Look for a little more detail in the residuals
g.r <- ggplot(X, aes(Grad_sample_size, Log.residual)) +
geom_smooth(span=span) +
geom_point(aes(fill=Major_category), alpha=1/2, shape=21) +
scale_x_log10() +
ggtitle("EDA of Median Salary vs. Sample Size: Residuals",
paste("Span of smooth is", signif(span, 2)))
print(g.r)
Glen_b sugeruje, abyś zastosował logarytm wielkości próbki i mediany pensji, aby sprawdzić, czy przeskalowanie danych ma sens.
Nie wiem, czy zgodziłbym się z twoim przekonaniem, że mediana wynagrodzenia zmniejsza się, gdy wielkość próby wzrośnie powyżej 1000. Byłbym bardziej skłonny powiedzieć, że w ogóle nie ma związku. Czy twoja teoria przewiduje, że powinien istnieć związek?
Innym sposobem oceny możliwej relacji jest dopasowanie linii regresji do danych. Alternatywnie możesz również użyć krzywej lowess. Wykreśl obie linie do swoich danych i sprawdź, czy można coś z nich wydobyć (wątpię jednak, aby było coś zbyt merytorycznego).
Zgadzam się również, że nie ma związku. Odtworzyłem twój oryginalny wykres rozproszenia (po lewej) i utworzyłem wykres rozproszenia log-log sugerowany przez glen_b (po prawej).
Wygląda na to, że nie ma z nimi żadnego związku. Korelacja między danymi transformowanymi logarytmicznie jest słaba (Pearson R = -13) i nieistotna (p = 0,09). W zależności od tego, ile dodatkowych informacji posiadasz, być może istnieje powód, aby zobaczyć słabą korelację ujemną, ale wydaje się to rozciągnięte. Sądzę, że każdy widoczny wzór, który widzisz, ma ten sam efekt, co tutaj .
Próba regresji liniowej nauczy cię czegoś o tej relacji, jak zasugerowano w pierwszej odpowiedzi. Ponieważ wygląda na to, że do tego wykresu używasz Pythona i Matplotliba, od rozwiązania dzieli Cię jeden wiersz kodu.
Można użyć wykresu połączenia dna morskiego, który wyświetli również linię regresji liniowej, współczynnik korelacji Pearsona i jego wartość p:
sns.jointplot("Grad_sample_size", "Grad_median", data=df, kind="reg")
jak widać, nie ma korelacji. Patrząc na ten ostatni wykres, wydaje się, że użyteczne byłoby przekształcenie logarytmiczne zmiennej x. Spróbujmy:
df['log_size'] = np.log(df['Grad_sample_size'])
sns.jointplot("log_size", "Grad_median", data=df, kind="reg")
Widać wyraźnie, że - transformacja logarytmiczna lub nie - korelacja jest niewielka, a zarówno wartość p, jak i przedziały ufności mówią, że nie jest ona statystycznie znacząca.
Ten wykres działa jako demonstracja centralnego twierdzenia granicznego, w którym zmienność między próbkami maleje wraz ze wzrostem wielkości próby. Jest to również kształt, którego można oczekiwać przy mocno wypaczonej zmiennej, takiej jak wynagrodzenie.