Pakiet R do identyfikacji zależności między zmiennymi [zamknięty]

13

Czy istnieje pakiet R, którego można użyć do zbadania, czy istnieją zależności między zmiennymi?

Zazwyczaj, gdy szukam wzorów, patrzę na korelacje, a następnie na wykres aspektowy. Następnie ręcznie stosuję przekształcenia zmiennych w danych. Zastanawiałem się, czy mogę przyspieszyć ten proces dzięki pakietowi R.

celenius
źródło
Jeśli masz własny proces, zawsze możesz rzucić własną paczkę. Lub po prostu funkcja wielokrotnego użytku w pliku załadowanym na początku skryptu.
Brandon Bertelsen,

Odpowiedzi:

9

AFAIK, nr Mówiąc ściślej, nie znam jednego pakietu R, który wykonałby dla ciebie część tego, co nazywa się analizą danych eksploracyjnych (EDA) za pomocą jednego wywołania funkcji - myślę o aspektach ponownego wyrażania i objawienia omówione w Hoaglin, Mosteller i Tukey, Zrozumienie solidnej i eksploracyjnej analizy danych . Wiley-Interscience, 1983, w szczególności.

Istnieje jednak kilka fajnych alternatyw w R, szczególnie w odniesieniu do interaktywnej eksploracji danych (zajrzyj tutaj, aby zapoznać się z interesującą dyskusją: Kiedy warto korzystać z interaktywnej wizualizacji danych? ). Mogę myśleć o

  • iplots lub jego następca Acinonyx , do interaktywnej wizualizacji (pozwalającej na szczotkowanie, powiązane wykresy itp.) (Niektóre z tych funkcji można znaleźć w pakiecie latticist ; wreszcie rgl jest świetny do interaktywnej wizualizacji 3D).
  • ggobi do interaktywnych i dynamicznych wyświetlaczy, w tym redukcji danych (skalowanie wielowymiarowe) i projekcji

To jest tylko do interaktywnej eksploracji danych, ale powiedziałbym, że to jest istota EDA. W każdym razie powyższe techniki mogą pomóc w badaniu zależności dwuwymiarowych lub wyższego rzędu między zmiennymi numerycznymi. W przypadku danych kategorycznych dobrym rozwiązaniem jest pakiet vcd (tabele wizualizacji i podsumowania). Powiedziałbym, że najpierw pakiety wegańskie i ade4 służą do badania zależności między zmiennymi mieszanymi typami danych.

Wreszcie, co z eksploracją danych w R? (Wypróbuj to słowo kluczowe w Rseek )

chl
źródło
(+1) Miło widzieć, że odpowiadasz na pytania!
whuber
+1 Btw: mała literówka - Acinonyx (i & i są transponowane).
Iterator,
@Iterator Dzięki za złapanie literówki. (Już dałem +1 twojej odpowiedzi, dobrze, że zacytowałeś artykuł Wilkinsona).
chl
2
Teraz jest loonteż waddella.github.io/loon Credit idzie do @hadleywickham za wskazanie tego.
Ari B. Friedman,
11

Jeśli chcesz tylko rzucić okiem na to, jak zmienne w zbiorze danych są ze sobą skorelowane, spójrz na funkcję pairs (), a jeszcze lepiej, na funkcję pairs.panels () w pakiecie psych. Tutaj napisałem trochę o funkcji par .

Korzystanie z funkcji pairs () lub psych :: pairs.panels () jest dość łatwe do tworzenia macierzy scatterplot.

pairs.panels(iris[-5], bg=c("blue","red","yellow")[iris$Species], pch=21,lm=TRUE)

wprowadź opis zdjęcia tutaj

Stephen Turner
źródło
7

Sprawdź scagnosticspaczkę i oryginalny dokument badawczy . Jest to bardzo interesujące dla relacji dwuwymiarowych. W przypadku relacji wielowymiarowych realizacja projekcji jest bardzo dobrym pierwszym krokiem.

Ogólnie rzecz biorąc, wiedza specjalistyczna w zakresie domen i danych zarówno zawęzi, jak i ulepszy metody szybkiego badania relacji.

Iterator
źródło
7

Funkcja chart.Correlation w PerformanceAnalytics zapewnia podobną funkcjonalność do wspomnianej funkcji plot.pairs @Stephen Turner, z wyjątkiem tego, że wygładza ją funkcja lessowa zamiast modelu liniowego oraz znaczenie dla korelacji.

library(PerformanceAnalytics)
chart.Correlation(iris[-5], bg=c("blue","red","yellow")[iris$Species], pch=21)

Wykres

Zach
źródło
5

Jeśli szukasz możliwych transformacji do pracy z korelacją, to narzędzie, które nie zostało jeszcze wspomniane, może być przydatne, acektóre można znaleźć w acepackpakiecie (i prawdopodobnie także w innych pakietach). Robi to interaktywny proces próbowania wielu różnych transformacji (przy użyciu wygładzaczy) w celu znalezienia transformacji w celu zmaksymalizowania korelacji między zestawem zmiennych x a zmienną ay. Wykreślenie przekształceń może następnie sugerować znaczące przekształcenia.

Greg Snow
źródło
2

Możesz użyć funkcji DCOR w pakiecie „energii”, aby obliczyć miarę zależności nieliniowej zwaną korelacją odległości i wykresem jak powyżej. Problem z korelacją Pearsona polega na tym, że może on wykryć jedynie zależności liniowe między zmiennymi. Upewnij się, że wybrałeś parametr zapisu dla indeksu w funkcji DCOR, który powiedział.

karawan
źródło