Bun venit la curs!

Manipularea datelor cu data.table în R

Matt Dowle and Arun Srinivasan

Instructors, DataCamp

Ce este un data.table?

  • data.frame îmbunătățit
    • Moștenește și extinde data.frame
  • Structură de date pe coloane
  • Toate coloanele au aceeași lungime, dar pot fi de tipuri diferite
Manipularea datelor cu data.table în R

De ce să folosiți data.table?

  • Sintaxă concisă și consistentă
    • Gândiți în termeni de rânduri, coloane și grupuri
    • Oferă un substituent pentru fiecare
# General form of data.table syntax
DT[i, j, by]
   |  |  |
   |  |  --> grouped by what?
   |  -----> what to do?
   --------> on which rows?
Manipularea datelor cu data.table în R

benchmark

Manipularea datelor cu data.table în R

De ce să folosiți data.table?

Manipularea datelor cu data.table în R

Crearea unui data.table

Trei moduri de a crea tabele de date:

  • data.table()
  • as.data.table()
  • fread()
Manipularea datelor cu data.table în R

Crearea unui data.table

library(data.table)
x_df <- data.frame(id = 1:2, name = c("a", "b"))
x_df
id name
 1    a
 2    b
x_dt <- data.table(id = 1:2, name = c("a", "b"))
x_dt
id name
 1    a
 2    b
Manipularea datelor cu data.table în R

Crearea unui data.table

y <- list(id = 1:2, name = c("a", "b"))
y
$id
1 2
$name
"a" "b"
x <- as.data.table(y)
x
id name
 1    a
 2    b
Manipularea datelor cu data.table în R

data.table și data.frame (I)

Deoarece un data.table este un data.frame ...

x <- data.table(id = 1:2, 
                name = c("a", "b"))
x
id name
 1    a
 2    b
class(x)
"data.table" "data.frame"
Manipularea datelor cu data.table în R

data.table și data.frame (II)

Funcțiile pentru interogarea data.frame-urilor funcționează și pe data.table-uri

nrow(x)
2
ncol(x)
2
dim(x)
2 2
Manipularea datelor cu data.table în R

data.table și data.frame (III)

Un data.table nu convertește automat coloanele de tip caracter în factori

x_df <- data.frame(id = 1:2, name = c("a", "b"))
class(x_df$name)
"factor"
x_dt <- data.table(id = 1:2, name = c("a", "b"))
class(x_dt$name)
"character"
Manipularea datelor cu data.table în R

data.table și data.frame (IV)

Nu setează, nu necesită și nu utilizează nume de rânduri

rownames(x_dt) <- c("R1", "R2")
x_dt
   id name
1:  1    a
2:  2    b
Manipularea datelor cu data.table în R

Să exersăm!

Manipularea datelor cu data.table în R

Preparing Video For Download...