Mam bardzo duży zestaw treningowy (~ 2 GB) w pliku CSV. Plik jest zbyt duży do odczytu bezpośrednio do pamięci (read.csv()
przynosi komputer do zatrzymania) i chciałbym zmniejszyć rozmiar pliku danych przy użyciu PCA. Problem polega na tym, że (o ile wiem) muszę odczytać plik w pamięci w celu uruchomienia algorytmu PCA (np. princomp()
).robi PCA na bardzo dużym zestawie danych w R
Próbowałem pakiet bigmemory
przeczytać plik w postaci big.matrix
, ale princomp
nie działa na big.matrix
obiektów i to nie wydaje się big.matrix
można przekształcić w coś w rodzaju data.frame
.
Czy istnieje sposób na uruchomienie na dużym pliku danych, którego mi brakuje?
Jestem względną nowicjuszką w R, więc niektóre z nich mogą być oczywiste dla bardziej doświadczonych użytkowników (przeprosiny w awansie).
Dzięki za wszelkie informacje.
Zasadniczo trzeba zrobić PCA bez szacowania macierzy kowariancji próbki. Istnieje obszerna literatura na temat wielowymiarowego PCA, szczególnie w przypadku aplikacji do przetwarzania obrazu i rynków finansowych. Jednak bardziej niż prawdopodobne jest, że nie jest to łatwe. – John
Ile obserwacji i ile zmiennych zawiera plik? – rolando2
@ rolando2 Zawiera około 50K wierszy i ~ 10000 kolumn – user141146