Perguntas com a marcação «data.table»

O pacote R data.table é uma extensão de data.frame construída para análise rápida de dados na memória. Use a tag dt para o pacote DataTables com Shiny (DT).

195
Como você exclui uma coluna pelo nome em data.table?

Para se livrar de uma coluna chamada "foo" em a data.frame, eu posso fazer: df <- df[-grep('foo', colnames(df))] No entanto, uma vez dfconvertido em um data.tableobjeto, não há como remover apenas uma coluna. Exemplo: df <- data.frame(id = 1:100, foo = rnorm(100)) df2 <-...

173
O que .SD representa em data.table em R

.SDparece útil, mas eu realmente não sei o que estou fazendo com isso. O que significa? Por que existe um período anterior (ponto final). O que está acontecendo quando eu o uso? Eu li: .SDé um data.tablecontendo o subconjunto de xdados de cada grupo, excluindo as colunas do grupo. Pode ser usado...

150
Como excluir uma linha por referência em data.table?

Minha pergunta está relacionada à atribuição por referência versus cópia data.table. Quero saber se é possível excluir linhas por referência, semelhante a DT[ , someCol := NULL] Eu quero saber sobre DT[someRow := NULL, ] Eu acho que há uma boa razão para que essa função não exista, então talvez...

141
Substituindo NAs pelo valor mais recente não NA

Em um data.frame (ou data.table), eu gostaria de "preencher" NAs com o valor anterior não NA mais próximo. Um exemplo simples, usando vetores (em vez de a data.frame) é o seguinte: > y <- c(NA, 2, 2, NA, NA, 3, NA, 4, NA, NA) Eu gostaria de uma função fill.NAs()que me permita construir...

135
Por que rbindlist é "melhor" que rbind?

Estou examinando a documentação data.tablee também notei em algumas das conversas aqui no SO que rbindlistdeveriam ser melhores do que rbind. Gostaria de saber por que é rbindlistmelhor do que rbinde em quais cenários rbindlistrealmente supera rbind? Existe alguma vantagem em termos de utilização...

118
Converta classes de coluna em data.table

Tenho um problema ao usar data.table: Como converter classes de colunas? Aqui está um exemplo simples: Com data.frame não tenho problemas para convertê-lo, com data.table, só não sei como: df <- data.frame(ID=c(rep("A", 5), rep("B",5)), Quarter=c(1:5, 1:5), value=rnorm(10)) #One way:...

118
Como reordenar colunas data.table (sem copiar)

Gostaria de reordenar as colunas no meu data.table x, dado um vetor de caracteres de nomes de coluna neworder: library(data.table) x <- data.table(a = 1:3, b = 3:1, c = runif(3)) neworder <- c("c", "b", "a") Obviamente, eu poderia fazer: x[ , neworder, with = FALSE] # or x[ , ..neworder] #...

113
Qual é o propósito de definir uma chave em data.table?

Estou usando data.table e há muitas funções que exigem que eu defina uma chave (por exemplo X[Y]). Como tal, desejo entender o que uma chave faz para definir as chaves corretamente em minhas tabelas de dados. Uma fonte que li foi ?setkey. setkey()classifica um data.tablee o marca como...

101
Limpando valores `Inf` de um dataframe R

Em R, tenho uma operação que cria alguns Infvalores quando transformo um dataframe. Eu gostaria de transformar esses Infvalores em NAvalores. O código que tenho é lento para grandes dados. Existe uma maneira mais rápida de fazer isso? Digamos que eu tenha o seguinte dataframe: dat <-...