Mam zestaw danych zdarzeń, które miały miejsce w tym samym okresie czasu. Każde zdarzenie ma typ (istnieje kilka różnych typów, mniej niż dziesięć) i lokalizację, reprezentowaną jako punkt 2D.
Chciałbym sprawdzić, czy istnieje jakaś korelacja między typami zdarzeń, czy też między typem a lokalizacją. Na przykład, może zdarzenia typu A zwykle nie występują tam, gdzie mają miejsce zdarzenia typu B. A może w niektórych obszarach występują głównie zdarzenia typu C.
Jakiego rodzaju narzędzi mogę tego użyć? Będąc nowicjuszem w analizie statystycznej, moim pierwszym pomysłem było użycie pewnego rodzaju PCA (Principal Component Analysis) w tym zestawie danych, aby sprawdzić, czy każde zdarzenie ma swój własny komponent, czy może niektóre mają takie same (tj. Są skorelowane)?
Muszę wspomnieć, że mój zestaw danych jest rzędu 500 000 punktów , przez co trudniej sobie z tym poradzić.
EDYCJA: Jak zauważono w odpowiedziach poniżej i komentarzach, sposobem jest modelowanie tego procesu jako oznaczonego punktu, a następnie użycie R do wykonania wszystkich ciężkich zadań, jak wyjaśniono szczegółowo w raporcie z warsztatów: http: / /www.csiro.edu.au/resources/Spatial-Point-Patterns-in-R.html
Odpowiedzi:
Typ danych, który opisujesz, jest zwykle nazywany „wzorami oznaczonych punktów”. R ma widok zadań dla statystyki przestrzennej, który oferuje wiele dobrych pakietów dla tego rodzaju analizy, z których większość prawdopodobnie nie jest w stanie poradzić sobie z takimi ogromnymi danymi mieć :(
Są to dwa dość różne rodzaje pytań: Drugie pytanie dotyczy umiejscowienia jednego rodzaju znaku / zdarzenia. Modne słowa, których należy szukać w tym kontekście, to estymacja intensywności lub estymacja funkcji K, jeśli jesteś zainteresowany odkrywaniem wzorców grupowania (zdarzenia tego rodzaju mają tendencję do grupowania się razem) lub odpychania (zdarzenia tego rodzaju mają tendencję do rozdzielania się). Pierwszy pyta o korelację między różnymi rodzajami zdarzeń. Jest to zwykle mierzone za pomocą funkcji korelacji znaku.
Sądzę, że podpróbkowanie danych w celu uzyskania bardziej możliwego do oszacowania rozmiaru danych jest niebezpieczne (patrz komentarz do odpowiedzi @ hamnera), ale być może możesz zagregować swoje dane: Podziel okno obserwacji na możliwą do zarządzania liczbę komórek o równej wielkości i tabelarycznie zliczaj zdarzenia każdy. Każda komórka jest następnie opisywana przez położenie jej środka i 10-wektorowy zliczeń dla 10 typów znaków. Powinieneś być w stanie używać standardowych metod dla oznaczonych procesów punktowych w tym zagregowanym procesie.
źródło
Po pierwsze, rozmiar zestawu danych. Zalecam pobranie małych, dających się traktować próbek zestawu danych (albo losowo wybierając N punktów danych, albo losowo wybierając kilka stosunkowo małych prostokątów na płaszczyźnie XY i biorąc wszystkie punkty, które mieszczą się w tej płaszczyźnie), a następnie szlifuj swoje techniki analizy w tym podzbiorze. Gdy masz już pojęcie o formie analizy, która działa, możesz zastosować ją do większych części zestawu danych.
PCA jest przede wszystkim stosowana jako technika redukcji wymiarów; twój zestaw danych ma tylko trzy wymiary (z których jeden jest kategoryczny), więc wątpię, by miałoby zastosowanie tutaj.
Spróbuj pracować z Matlabem lub R, aby wizualizować punkty, które analizujesz na płaszczyźnie XY (lub ich gęstość względną, jeśli pracujesz z całym zestawem danych), zarówno dla poszczególnych typów, jak i dla wszystkich typów łącznie, i zobacz, jakie wzory pojawiają się wizualnie. Może to pomóc w przeprowadzeniu bardziej rygorystycznej analizy.
źródło