Trong phân tích dữ liệu thực tế, bước kết nối & nhập dữ
liệu (Data Ingestion) là bước đầu tiên và rất quan trọng.
Ngôn ngữ R cung cấp nhiều gói và công cụ mạnh mẽ để
kết nối đến nhiều loại nguồn dữ liệu khác nhau, từ file
cục bộ đến cơ sở dữ liệu và web API.
.csv,
.xlsx, .xls, .txtlibrary(readr)
data_csv <- read_csv("du_lieu/data.csv")
library(readxl)
data_excel <- read_excel("du_lieu/data.xlsx", sheet = 1)
data_txt <- read_delim("data.txt", delim = "\t")
library(readr)
library(dplyr)
files <- list.files("folder_csv", pattern = "\\.csv$", full.names = TRUE)
data_all <- files %>% lapply(read_csv) %>% bind_rows()
library(readxl)
library(purrr)
files <- list.files("folder_excel", pattern = "\\.xlsx$", full.names = TRUE)
data_all <- map_dfr(files, read_excel)
library(tabulizer)
# Cần Java, hỗ trợ tốt trên Windows/macOS
data_pdf <- extract_tables("du_lieu/file.pdf")[[1]] %>% as.data.frame()
library(googlesheets4)
sheet_url <- "https://docs.google.com/spreadsheets/d/1abcXYZ..."
data_gsheet <- read_sheet(sheet_url)
✅ Bạn cần đăng nhập Google lần đầu (OAuth2), sau đó R sẽ ghi nhớ
library(DBI)
library(odbc)
con <- dbConnect(odbc(),
Driver = "SQL Server",
Server = "server_name",
Database = "db_name",
UID = "username",
PWD = "password",
Port = 1433)
data_sql <- dbGetQuery(con, "SELECT * FROM SalesData")
dbDisconnect(con)
library(DBI)
library(ROracle)
drv <- dbDriver("Oracle")
con <- dbConnect(drv, username = "user", password = "pass", dbname = "XE")
data_oracle <- dbGetQuery(con, "SELECT * FROM KHACHHANG")
dbDisconnect(con)
⚠️ Cần cài đặt client Oracle & cấu hình TNSNAME trên máy
library(httr)
library(jsonlite)
res <- GET("https://api.example.com/data")
json_data <- content(res, as = "text")
data_api <- fromJSON(json_data, flatten = TRUE)
res <- GET("https://api.example.com/data",
add_headers(Authorization = "Bearer YOUR_TOKEN"))
.csv, .txt readr read_csv(), read_delim() .xlsx, .xls readxl read_excel()
readr, purrr list.files(), map_dfr()
tabulizer extract_tables()
googlesheets4 read_sheet()
DBI, odbc dbConnect(), dbGetQuery()
ROracle dbConnect(), dbGetQuery()
httr, jsonlite GET(), fromJSON()
Quản lý kết nối SQL bằng .env hoặc cấu hình riêng
Dùng arrow, duckdb, vroom nếu xử lý tập lớn
Ghi log dữ liệu đầu vào nếu dùng trong báo cáo định kỳ