csvkit

Pushing data back to database

Submitted by tinhxleev2 on Mon, 10/11/2021 - 04:35

Kéo dữ liệu từ CSDL, thao túng và giờ là đẩy trở lại cơ sở dữ liệu. 

Sử dụng csvsql để thực hiện: 

  • SQL statements trực tiếp trên CSDL
  • Hỗ trợ để tạo bảng và chèn dữ liệu vào CSLD

Một số đối biến (arguments) như 

--insert

--db

--no-inference

--no-constraints 

Đẩy trở lại CSDL syntax (ở đây dùng \ để xuống dòng và làm cho code dễ đọc hơn)

csvsql --db "ten_CSLD" \

           --insert ten_file_csv.csv

 

Tags

Manipulating data using SQL syntax

Submitted by tinhxleev2 on Fri, 10/01/2021 - 03:56

csvsql sử dụng để áp dụng sql statements vào một hay nhiều csv file, csvsql sẽ tạo ra một in-memory CSDL SQL tạm thời lưu file đang được xử lý. Tuy nhiên csvsql chỉ áp dụng cho file có dung lượng nhỏ tới trung bình. (csvsql -h để xem thêm thông tin).

syntax:

csvsql --query "SELECT * FROM TEN_CSLD LIMIT 1" ten_csv_file.csv

sẽ in ra hàng đầu tiên.

Sử dụng với csvlook cho hiển thị rõ ràng hơn

csvsql --query "SELECT * FROM TEN_CSLD LIMIT 1" data/ten_csv_file.csv | csvlook

Lưu kết quả 

Tags

Kéo dữ liệu từ CSDL (database)

Submitted by tinhxleev2 on Fri, 09/24/2021 - 09:43

sql2csv thự hiện truy xuất dữ liệu từ các cơ cở dữ liệu (MS SQL, MySQL, Oracle, PostgreSQL, Sqlite...)

Kết quả thu được lưu ở dạng csv file. 

sql2csv --db "sqlite:///dummy.db" --query "SELECT * FROM test" > file_output.csv

Để dễ đọc hơn thì sử dụng

sql2csv --db "sqlite:///dummy.db" \

        --query "SELECT * FROM test" \

        > file_output.csv

Tags

Stacking data and chaining commands with csvkit

Submitted by tinhxleev2 on Fri, 09/24/2021 - 08:37

csvstack: chồng các file csv lên nhau theo hàng, thông thường các csv file này có số cột và tên cột tương tự nhau. 

Ví dụ:

csvstack file1.csv file2.csv > file.csv

csvstack -g "G1","G2" \ file1.csv file2.csv > all_file.csv

Lưu ý không có dấu cách giữa "G1","G2".

Thêm cột là nhóm thể hiện giá trị để biết giá trị trên cột thuộc về file1.csv hay file2.csv

Thay vì để tên cột group theo mặc định bạn có thể đổi tên mới bằng

csvstack -g "G1","G2" -n "ten_cot_moi" \ file1.csv file2.csv > all_file.csv

Tags

Lọc dữ liệu sử dụng csvkit

Submitted by tinhxleev2 on Tue, 09/21/2021 - 09:01

Vì dữ liệu csv được lưu ở dạng bảng nên có thể lọc dữ liệu theo cột hoặc hàng bằng các tạo một bảng con từ bảng chính. Lưu ý khi lọc dữ liệu đó là lọc cột trước xong mới tới hàng. 

csvcut lọc dữ liệu theo cột, bằng tên hoặc vị trí

csvcut -h

Xem hướng dẫn. 

Sử dụng 

csvcut --name ten_file.csv hoặc csvcut -n ten_file.csv để in tên cột

Sử dụng 

csvcut -c 1 ten_file.csv

để lấy cột có thứ tự thứ nhất, thay vì lấy theo thứ tự thì có thể lấy theo tên

csvcut -c "ten_cot" ten_file.csv

Tags

Làm quen với csvkit

Submitted by tinhxleev2 on Wed, 09/15/2021 - 08:42

Làm quen với csvkit trong việc xử lý dữ liệu ở terminal shell.

Đơn giản hơn so với Python. 

csvkit dùng để xử lý dữ liệu đơn giản ở shell. 

Bộ csvkit này được phát triển trong Python bởi Wireservice. 

csvkit dùng để làm sạch và xử lý dữ liệu trên file csv, như vậy csvkit có những khả năng so bì được với Python, R và SQL.

Xem thêm thông tin về csvkit

Sử dung Python package manager để cài csvkit.

pip install csvkit 

Tags

Learing