data.table
Wymiana NAs na najnowszą wartość non-NA
W danych.ramka (lub dane.table), chciałbym "napełnić" NAs najbliższą poprzednią wartością nie-NA. Prosty przykład użycia wekt ... yjście
> y
[1] NA 2 2 2 2 3 3 3 4 4 4
... co chyba działa. Ale, stary, czy to jest brzydkie! Jakieś sugestie?
Wybierz / Przypisz do danych.tabela, gdy nazwy zmiennych są przechowywane w wektorze znaków
Jak odnosić się do zmiennych w data.table, Jeśli nazwy zmiennych są przechowywane w wektorze znaków? Na przykład, działa to d ... ację dla danych.tabela z notacją czy bez :=? Oczywistą rzeczą dt[ , list(colname)] nie działa (nie spodziewałem się tego).
Dodaj wiele kolumn do danych R.tabela w jednym wywołaniu funkcji?
Mam funkcję, która zwraca dwie wartości na liście. Obie wartości muszą być dodane do danych.tabela w dwóch nowych kolumnach. ... środowisku za każdym razem, gdy wywołuję myfun, potrzebuję tylko sposobu na dodanie dwóch kolumn za pomocą referencji na raz.
Zakładka połącz z pozycjami początkowymi i końcowymi
Rozważmy następujące data.table s. pierwszy definiuje zbiór regionów z pozycjami początkowymi i końcowymi dla każdej grupy "x ... e sposób, aby zachować wszystkie kolumny z łącznikiem rolkowym, abym mógł zgłosić" start"," pos"," end " zgodnie z życzeniem?
Jak zastąpić wartości NA w tabeli dla wybranych kolumn
Istnieje wiele postów o zastąpieniu wartości NA. Zdaję sobie sprawę, że można zastąpić NAs w poniższej tabeli / ramce następu ... nna logiczna. Mam kilka kolumn, więc nie chcę tego robić o jeden. I chciałbym wiedzieć, jak to zrobić.
Masz jakieś sugestie?
rolka z okienkiem start/end
Rozważmy następujące data.table s. pierwszy definiuje zbiór regionów z pozycjami początkowymi i końcowymi dla każdej grupy
... eje sposób, aby zachować wszystkie kolumny z łącznikiem rolkowym, abym mógł zgłosić"start","pos"," end " zgodnie z życzeniem?
Jak utworzyć zmienną lag w każdej grupie?
Mam dane.Tabela:
set.seed(1)
data <- data.table(time = c(1:3, 1:4),
groups = c(rep(c("b", "a"), c(3, ... danych.tabela, która jest problematyczna.
Co to jest najbardziej efektywny sposób na to w base R, plyr, dplyr i data.stolik?
Sortuj wiersze w danych.tabela w kolejności malejącej na klawiszu łańcuchowym 'order (- x, v`' podaje błąd w danych.tabela 1.9.4 lub wcześniejsza
Powiedzmy, że mam następujące data.table w R:
library(data.table)
DT = data.table(x=rep(c("b","a","c"),each=3), y=c(1,3 ... [order(-y,v)] wynik jest ok, ale jeśli użyjesz DT[order(-x,v)] wystąpi błąd. Więc moje pytanie brzmi: jak rozwiązać ten błąd?
Podzbiór według grupy z danymi.tabela
Załóżmy, że mam tabelę danych zawierającą niektórych baseballistów:
library(plyr)
library(data.table)
bdt <- as.data.ta ... [, .SD[g == max(g)], by = id]
Ale jest tylko o 30% szybszy niż plyr, co sugeruje, że prawdopodobnie nie jest idiomatyczny.
R podsumowanie wielu kolumn z danymi.tabela
Próbuję użyć danych.tabela przyspieszająca przetwarzanie dużych danych.ramka (300k x 60) wykonana z kilku mniejszych scalonyc ... y przykład, ale wydaje się to trochę skomplikowane dla mojego potrzeb. dzięki
Jak podsumować dane.tabela w wielu kolumnach
Jak zmienić kolejność danych.kolumny tabeli (bez kopiowania)
Chciałbym zmienić kolejność kolumn w moim data.table x, podano wektor znaków nazw kolumn, neworder:
library(data.table)
x &l ... # 2: 0.4787768 2 2
# 3: 0.3570803 1 3
Ale to wymagałoby ponownego skopiowania całego zbioru danych. Jest na to inny sposób?
Data.meta-programowanie tabeli
Myślę, że meta-programowanie jest tutaj właściwym terminem.
Chcę móc korzystać z danych.table podobnie jak jeden będzie uży ... a_out)
}
test_agg_meta<-function(){
stopifnot(all(my_agg()==my_agg_meta()))
print("Congrats, you passed the test")
}
Czyszczenie wartości " Inf` z ramki danych R
W R, mam operację, która tworzy pewne Inf wartości podczas przekształcania ramki danych.
Chciałbym zamienić te Inf wartośc ... ncol(x)){
x[,i][is.infinite(x[,i])] = NA
}
return(x)
}
Ale nie sądzę, że to naprawdę wykorzystuje moc R.
Wyodrębnij wiersz odpowiadający minimalnej wartości zmiennej według grupy
Chcę (1) pogrupować dane według jednej zmiennej (State), (2) w każdej grupie znajdź wiersz o minimalnej wartości innej zmienn ...
2: RI 19
Ale jak wyodrębnić cały wiersz odpowiadający tym min wartości, tzn. także włączenie Company do wyniku?
Jak wybrać dane R.wiersze tabeli oparte na dopasowaniu podłańcucha (a la SQL like)
Mam dane.tabela z kolumną znakową i chce wybrać tylko te wiersze, które zawierają podłańcuch w niej. Odpowiednik SQL WHERE x ... hs["mb" %in% Name]
Empty data.table (0 rows) of 2 cols: Name,Number
Jak wybrać tylko wiersze, w których nazwa zawiera "mb"?
Sortuj dane.tabela szybko Rosnąco / malejąco
Mam dane.tabela z około 3 milionami wierszy i 40 kolumnami. Chciałbym posortować tę tabelę według porządku malejącego w grupa ... 6
Mateusz: to, co mnie zaskoczyło, to zamiana znaku miesiąca zajmuje większość czasu. Bez niego setkey szybko się rozpala.
Podaj nazwę kolumny w danych.tabela wykorzystująca zmienną [duplikat]
Możliwy duplikat:zmienne wybieranie / przypisywanie do pól w danych.Tabela
W poniższym przykładzie tworzę tabelę dan ... . Te nazwy kolumn I zostanie dostarczony poprzez przejście przez moduł R.
Nieważne, mam to, powinno być:
DT[ , get(temp)]
Najbardziej efektywna Lista do danych.metoda frame ' a?
Właśnie rozmawiałem o tym ze współpracownikami i pomyśleliśmy, że warto zobaczyć, co ludzie w SO land mają do powiedzenia. Z ... a metoda skórowania kota, która jest szczególnie lepsza, gdy wydajność (szczególnie pod względem pamięci) jest najważniejsza?
najlepszy sposób na transpozycję danych.tabela
[UPDATE: w pakiecie data.table jest już natywna Funkcja transpose()
Często muszę transponować data.table, za każdym razem, ... ol2 12 22 32
# col3 13 23 33
Czy jest coś, co mógłbym zoptymalizować tutaj lub zrobić to w "ładniejszy" sposób?
Konwertuj ramkę danych na dane.tabela bez kopii
Mam dużą ramkę danych (w kolejności kilku GB), którą chciałbym przekonwertować na data.table. Użycie as.data.table tworzy kop ... (Mb)
# Ncells 304519 16.3 597831 32.0 306162 16.4
# Vcells 100444242 766.4 322342905 2459.3 200933219 1533.0