- Công cụ viết bằng Rust giúp xử lý các tệp CSV dung lượng lớn nhanh và hiệu quả ngay trên terminal
- Ngoài nhiều tính năng thao tác dữ liệu, còn hỗ trợ hiển thị, trực quan hóa, phân tích, web scraping, xử lý văn bản, phân tích mạng
- Bên trong sử dụng đa luồng, ngôn ngữ biểu thức, xử lý song song để đạt hiệu năng cao
- Có thể xử lý cả các tệp CSV cực lớn cấp gigabyte mà không gặp vấn đề
- Cung cấp ngôn ngữ biểu thức chuyên dụng nhanh hơn nhiều so với Python hay Lua
- Có thể xây dựng luồng dữ liệu phức tạp bằng chuỗi lệnh đơn
- Hỗ trợ trực quan hóa cơ bản từ thống kê đơn giản đến heatmap, histogram
- Bao gồm các tính năng nâng cao cho nhà nghiên cứu khoa học xã hội và phân tích dữ liệu web
- Hỗ trợ Linux, macOS, Windows
- Tự động nhận diện nhiều định dạng như
.tsv, .psv, .ssv, .gz
Ví dụ lệnh cốt lõi
-
Khám phá
xan headers: in danh sách cột
xan view: xem dưới dạng bảng trong terminal
xan flatten: bung toàn bộ giá trị của một hàng để xem
xan hist, xan plot, xan heatmap: tính năng trực quan hóa
-
Lọc & tìm kiếm
xan search -s 키워드 파일.csv: tìm các hàng chứa từ khóa cụ thể
xan filter '조건식' 파일.csv: lọc hàng bằng biểu thức
-
Biến đổi
xan select: chọn cột
xan map: tạo cột mới bằng biểu thức
xan transform: thay đổi cột hiện có bằng biểu thức
-
Tổng hợp và phân tích
xan count: đếm số hàng
xan frequency: tạo bảng tần suất
xan stats: in thống kê mô tả
xan agg: tổng hợp do người dùng định nghĩa
xan groupby: thực hiện tổng hợp theo nhóm
-
Sắp xếp & loại bỏ trùng lặp
xan sort -s 컬럼: sắp xếp
xan dedup -s 컬럼: loại bỏ trùng lặp
-
Kết hợp
xan join: join theo khóa
xan merge: gộp các tệp đã sắp xếp
xan cat: nối theo hàng hoặc cột
-
Ngôn ngữ biểu thức
xan map 'fmt("{} ({})", name, foundation_year)' key
xan filter 'batch > 1'
xan transform name 'split(name, ".") | first | upper'
- Ngôn ngữ biểu thức là một DSL gọn nhẹ chuyên cho thao tác CSV; có thể tham khảo cheatsheet, danh sách hàm, danh sách hàm tổng hợp trong tài liệu chính thức
-
Tính năng trực quan hóa
xan hist: histogram dạng văn bản
xan plot: biểu đồ phân tán/biểu đồ đường
xan heatmap: heatmap tương quan
xan view -p: hiển thị toàn bộ bảng trong terminal
Tính năng nâng cao
- Hỗ trợ hoàn chỉnh pipeline đầu vào/đầu ra chuẩn
- Tự động xử lý tệp nén gzip
- Tích hợp scraping DSL (chuyển HTML → CSV)
- Hỗ trợ lexicometry, fuzzy matching:
tokenize, vocab, cluster
- Chuyển đổi mạng/ma trận:
network, matrix
1 bình luận
Tôi đã tự hỏi có thể ứng dụng thế nào, nhưng có lẽ chỉ cần dùng
sorthoặcdropthôi cũng đã đủ ý nghĩa rồi.