Đọc tệp văn bản được phân tách bằng dấu phẩy trong gấu trúc Python

Mọi dự án Phân tích dữ liệu đều yêu cầu một bộ dữ liệu. Các bộ dữ liệu này có sẵn ở nhiều định dạng tệp khác nhau, chẳng hạn như. xlsx,. json,. csv,. html. Thông thường, các bộ dữ liệu chủ yếu được tìm thấy trong. định dạng csv. Các tệp CSV [hoặc Giá trị được phân tách bằng dấu phẩy], như tên gợi ý, có các mục dữ liệu được phân tách bằng dấu phẩy. Tệp CSV là tệp văn bản thuần túy có kích thước tệp nhẹ hơn. Ngoài ra, các tệp CSV có thể được xem và lưu ở dạng bảng trong các công cụ phổ biến như Microsoft Excel và Google Trang tính

Dấu phẩy được sử dụng trong tệp CSV được gọi là dấu phân cách. Hãy nghĩ về các dấu phân cách như một ranh giới ngăn cách để phân biệt giữa hai mục dữ liệu tiếp theo bất kỳ

Đọc tệp CSV bằng Pandas

Để đọc các tệp CSV hoặc dấu phân cách read_csv này, chúng tôi sử dụng một chức năng của thư viện Pandas có tên là read_csv[]

df = pd.read_csv[]

Hàm read_csv[] có hàng chục tham số, trong đó một tham số là bắt buộc và các tham số khác là tùy chọn để sử dụng trên cơ sở đặc biệt. Tham số bắt buộc này chỉ định tệp CSV mà chúng tôi muốn đọc. Ví dụ,

Ghi chú. Hãy nhớ sử dụng hai dấu gạch chéo ngược trong khi chỉ định đường dẫn tệp

abc. tệp csv

[Nguồn – Máy Tính Cá Nhân]

Thông số sep

Một trong các tham số tùy chọn trong read_csv[] là sep, tên rút gọn của dấu phân cách. Toán tử này là dấu phân cách mà chúng ta đã nói trước đây. Tham số sep này cho trình thông dịch biết, dấu phân cách nào được sử dụng trong tập dữ liệu của chúng tôi hoặc theo thuật ngữ của Layman, cách các mục dữ liệu được phân tách trong tệp CSV của chúng tôi

Giá trị mặc định của tham số sep là dấu phẩy [,] có nghĩa là nếu chúng ta không chỉ định tham số sep trong hàm read_csv[] thì được hiểu rằng tệp của chúng ta đang sử dụng dấu phẩy làm dấu phân cách. Do đó, trong đoạn mã trước của chúng tôi, chúng tôi đã không chỉ định tham số sep, có thể hiểu rằng tệp của chúng tôi có dấu phẩy là dấu phân cách

Sử dụng các dấu phân cách khác

Thường thì nó có thể xảy ra, tập dữ liệu trong. định dạng tệp csv có các mục dữ liệu được phân tách bằng dấu phân cách không phải dấu phẩy. Điều này bao gồm dấu chấm phẩy, dấu hai chấm, không gian tab, thanh dọc, v.v. Trong những trường hợp như vậy, chúng ta cần sử dụng tham số sep bên trong read. hàm csv[]. Ví dụ: một tệp có tên Ví dụ. csv là tệp CSV được phân tách bằng dấu chấm phẩy

Thí dụ. tệp csv

[Nguồn – Máy Tính Cá Nhân]

df = pd.read_csv["C:\Users\Rahul\Desktop\Example.csv", sep = ';']

Khi thực thi mã này, chúng tôi nhận được một khung dữ liệu có tên là df

Khung dữ liệu df

[Nguồn – Máy Tính Cá Nhân]

Thanh phân cách dọc

Do đó, tệp được phân cách bằng thanh dọc có thể được đọc bởi

df = pd.read_csv["C:\Users\Rahul\Desktop\Example.csv", sep = '|']

Máy tách đại tràng

Và một tệp được phân cách bằng dấu hai chấm có thể được đọc bởi

df = pd.read_csv["C:\Users\Rahul\Desktop\Example.csv", sep = ':']

Dấu tách tab

Thường thì chúng ta có thể bắt gặp các bộ dữ liệu có định dạng tệp. tsv. Này. các tệp tsv có các giá trị được phân tách bằng tab trong chúng hoặc chúng ta có thể nói rằng nó có không gian tab dưới dạng dấu phân cách. Những tập tin như vậy có thể được đọc bằng cách sử dụng cùng một. read_csv[] của pandas và chúng ta cần chỉ định dấu phân cách. Ví dụ

df = pd.read_csv["C:\Users\Rahul\Desktop\Example.tsv", sep = 't']

Tương tự, các dấu phân cách khác có thể được sử dụng dựa trên dấu phân cách đã xác định từ dữ liệu của chúng tôi

Phần kết luận

Việc kiểm tra xem dữ liệu của chúng tôi đang được lưu trữ như thế nào trong bộ dữ liệu của chúng tôi luôn hữu ích. Hiểu dữ liệu là cần thiết trước khi bắt đầu làm việc với nó. Dấu phân cách [dấu phân cách pandas đọc csv] có thể được xác định dễ dàng bằng cách kiểm tra dữ liệu. Dựa trên kiểm tra của chúng tôi, chúng tôi có thể sử dụng dấu phân cách có liên quan trong tham số sep

Phương tiện hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định của Tác giả.  

Tệp CSV là một loại tệp văn bản thuần túy đơn giản sử dụng cấu trúc cụ thể để sắp xếp dữ liệu dạng bảng. Định dạng tiêu chuẩn của tệp CSV được xác định bởi dữ liệu hàng và cột trong đó một dòng mới kết thúc mỗi hàng để bắt đầu hàng tiếp theo và mỗi cột được phân tách bằng dấu phẩy trong hàng

CSV là một định dạng phổ biến để trao đổi dữ liệu vì nó nhỏ gọn, đơn giản và tổng quát. Nhiều dịch vụ trực tuyến cho phép người dùng của họ xuất dữ liệu dạng bảng từ trang web thành tệp CSV. Tệp CSV sẽ mở trong Excel và gần như tất cả các cơ sở dữ liệu đều có công cụ cho phép nhập từ tệp CSV

Trong hướng dẫn này, bạn sẽ học

Tệp mẫu CSV

Dữ liệu ở dạng bảng còn được gọi là CSV [giá trị được phân tách bằng dấu phẩy] – nghĩa đen là “giá trị được phân tách bằng dấu phẩy. Đây là một định dạng văn bản dành cho việc trình bày dữ liệu dạng bảng. Mỗi dòng của tệp là một dòng của bảng. Các giá trị của các cột riêng lẻ được phân tách bằng ký hiệu phân cách – dấu phẩy [,], dấu chấm phẩy [;] hoặc ký hiệu khác. CSV có thể dễ dàng đọc và xử lý bằng Python

Xem xét bảng sau

Bảng dữ liệu

Ngôn ngữ lập trìnhDesigned byAppearedExtensionPythonGuido van Rossum1991. pyJavaJames Gosling1995. javaC++Bjarne Stroustrup1983. cpp

Bạn có thể đại diện cho bảng này trong csv như bên dưới

Dữ liệu CSV

Ngôn ngữ lập trình, Được thiết kế bởi, Đã xuất hiện, Phần mở rộng

Trăn, Guido van Rossum, 1991,. py

Java, James Gosling, 1995,. java

C++, Bjarne Stroustrup, 1983,. cpp

Như bạn có thể thấy mỗi hàng là một dòng mới và mỗi cột được phân tách bằng dấu phẩy. Đây là một ví dụ về cách tệp CSV trông như thế nào

Tải xuống dữ liệu CSV

Mô-đun CSV Python

Python cung cấp mô-đun CSV để xử lý các tệp CSV. Để đọc/ghi dữ liệu, bạn cần lặp qua các hàng của CSV. Bạn cần sử dụng phương pháp tách để lấy dữ liệu từ các cột được chỉ định

Chức năng mô-đun CSV

Trong tài liệu mô-đun CSV, bạn có thể tìm thấy các chức năng sau

  • csv. field_size_limit – trả về kích thước trường tối đa
  • csv. get_dialect – lấy phương ngữ được liên kết với tên
  • csv. list_dialects – hiển thị tất cả các phương ngữ đã đăng ký
  • csv. trình đọc – đọc dữ liệu từ tệp csv
  • csv. register_dialect – liên kết phương ngữ với tên
  • csv. nhà văn – ghi dữ liệu vào tệp csv
  • csv. unregister_dialect – xóa phương ngữ được liên kết với tên đăng ký phương ngữ
  • csv. QUOTE_ALL – Trích dẫn mọi thứ, bất kể loại nào
  • csv. QUOTE_MINIMAL – Trường trích dẫn có ký tự đặc biệt
  • csv. QUOTE_NONNUMERIC – Trích dẫn tất cả các trường không phải là giá trị số
  • csv. QUOTE_NONE – Không trích dẫn bất cứ điều gì trong đầu ra

Trong hướng dẫn này, chúng tôi sẽ chỉ tập trung vào các chức năng của trình đọc và trình ghi cho phép bạn chỉnh sửa, sửa đổi và thao tác dữ liệu trong tệp CSV

Cách đọc tệp CSV bằng Python

Dưới đây là các bước để đọc tệp CSV bằng Python

Bước 1] Để đọc dữ liệu từ tệp CSV, bạn phải sử dụng chức năng trình đọc để tạo đối tượng trình đọc

Chức năng đọc được phát triển để lấy từng hàng của tệp và tạo danh sách tất cả các cột. Sau đó, bạn phải chọn cột bạn muốn dữ liệu biến cho

Nghe có vẻ phức tạp hơn nhiều so với thực tế. Hãy xem mã Python này để đọc tệp CSV và chúng ta sẽ thấy rằng làm việc với tệp csv không quá khó

#import necessary modules
import csv
with open['X:\data.csv','rt']as f:
  data = csv.reader[f]
  for row in data:
        print[row]

Bước 2] Khi bạn thực hiện chương trình trên, đầu ra sẽ là

['Programming language; Designed by; Appeared; Extension']
['Python; Guido van Rossum; 1991; .py']
['Java; James Gosling; 1995; .java']
['C++; Bjarne Stroustrup;1983;.cpp']

Cách đọc tệp CSV thành Từ điển bằng Python

Bạn cũng có thể sử dụng DictReader để đọc tệp CSV. Kết quả được hiểu là một từ điển trong đó hàng tiêu đề là khóa và các hàng khác là giá trị

Hãy xem xét đoạn mã sau

#import necessary modules
import csv

reader = csv.DictReader[open["file2.csv"]]
for raw in reader:
    print[raw]

Kết quả của mã này là

________số 8_______

Và cách này để đọc dữ liệu từ tệp CSV dễ dàng hơn nhiều so với phương pháp trước đó. Tuy nhiên, đây không phải là cách tốt nhất để đọc dữ liệu

Cách viết tệp CSV bằng Python

Đây là cách viết tệp CSV bằng Python

Khi bạn có một bộ dữ liệu mà bạn muốn lưu trữ trong tệp CSV, bạn phải sử dụng hàm writer[]. Để lặp lại dữ liệu qua các hàng [dòng], bạn phải sử dụng hàm writerow[]

Xem xét ví dụ sau. Chúng tôi ghi dữ liệu vào một tập tin “writeData. csv” trong đó dấu phân cách là dấu nháy đơn

#import necessary modules
import csv

with open['X:\writeData.csv', mode='w'] as file:
    writer = csv.writer[file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL]

    #way to write to csv file
    writer.writerow[['Programming language', 'Designed by', 'Appeared', 'Extension']]
    writer.writerow[['Python', 'Guido van Rossum', '1991', '.py']]
    writer.writerow[['Java', 'James Gosling', '1995', '.java']]
    writer.writerow[['C++', 'Bjarne Stroustrup', '1985', '.cpp']]

Kết quả trong tệp csv là

Programming language, Designed by, Appeared, Extension 
Python, Guido van Rossum, 1991, .py
Java, James Gosling, 1995, .java
C++, Bjarne Stroustrup,1983,.cpp

Đọc tệp CSV bằng Pandas

Pandas là một thư viện mã nguồn mở cho phép bạn nhập CSV bằng Python và thực hiện thao tác dữ liệu. Pandas cung cấp một cách dễ dàng để tạo, thao tác và xóa dữ liệu

You must install pandas library with command pip install pandas. In Windows, you will execute this command in Command Prompt while in Linux in the Terminal.

Đọc CSV thành DataFrame của gấu trúc rất nhanh chóng và dễ dàng

#import necessary modules
import pandas
result = pandas.read_csv['X:\data.csv']
print[result]

Kết quả của ví dụ Pandas CSV đã đọc

Programming language, Designed by, Appeared, Extension 
0    Python, Guido van Rossum, 1991, .py
1    Java, James Gosling, 1995, .java
2    C++, Bjarne Stroustrup,1983,.cpp

Thư viện rất hữu ích. Chỉ trong ba dòng mã, bạn có kết quả giống như trước đó. Pandas biết rằng dòng đầu tiên của CSV chứa tên cột và nó sẽ tự động sử dụng chúng

Viết tệp CSV bằng Pandas

Ghi vào tệp CSV bằng Pandas dễ dàng như đọc. Ở đây bạn có thể thuyết phục trong đó. Trước tiên, bạn phải tạo DataFrame dựa trên mã Python ghi vào mã CSV sau

from pandas import DataFrame
C = {'Programming language': ['Python','Java', 'C++'],
        'Designed by': ['Guido van Rossum', 'James Gosling', 'Bjarne Stroustrup'],
        'Appeared': ['1991', '1995', '1985'],
        'Extension': ['.py', '.java', '.cpp'],
    }
df = DataFrame[C, columns= ['Programming language', 'Designed by', 'Appeared', 'Extension']]
export_csv = df.to_csv [r'X:\pandaresult.csv', index = None, header=True] # here you have to write path, where result file will be stored
print [df]

Đây là đầu ra

Programming language, Designed by, Appeared, Extension
0    Python, Guido van Rossum, 1991, .py
1    Java, James Gosling, 1995, .java
2    C++, Bjarne Stroustrup,1983,.cpp

Và tệp CSV được tạo tại vị trí đã chỉ định

Phần kết luận

Vì vậy, bây giờ bạn đã biết cách sử dụng phương thức 'csv' cũng như đọc và ghi dữ liệu ở định dạng CSV. Các tệp CSV được sử dụng rộng rãi trong các ứng dụng phần mềm vì chúng dễ đọc và dễ quản lý, đồng thời kích thước nhỏ giúp chúng xử lý và truyền tải tương đối nhanh

Mô-đun csv cung cấp các hàm và lớp khác nhau cho phép bạn đọc và viết dễ dàng. Bạn có thể xem tài liệu Python chính thức và tìm một số mẹo và mô-đun thú vị hơn. CSV là cách tốt nhất để lưu, xem và gửi dữ liệu. Trên thực tế, nó không quá khó để học như lúc đầu. Nhưng với một chút luyện tập, bạn sẽ thành thạo nó

Pandas là một giải pháp thay thế tuyệt vời để đọc các tệp CSV

Ngoài ra, có nhiều cách khác để phân tích tệp văn bản bằng các thư viện như ANTLR, PLY và PlyPlus. Tất cả chúng đều có thể xử lý phân tích cú pháp hạng nặng và nếu thao tác Chuỗi đơn giản không hoạt động, thì có các biểu thức chính quy mà bạn có thể sử dụng

Làm cách nào để đọc tệp văn bản có dấu phân cách bằng dấu phẩy bằng gấu trúc?

Sử dụng read_csv[] tiện ích mở rộng csv . Để đọc tệp văn bản của chúng tôi và tải nó vào DataFrame của gấu trúc, tất cả những gì chúng tôi cần cung cấp cho phương thức read_csv[] là tên tệp, dấu phân cách/dấu phân cách [trong trường hợp của chúng tôi là khoảng trắng] và hàng chứa tên cột mà .

Cách đọc tệp CSV được phân tách bằng dấu phẩy trong pandas?

Đọc tệp CSV bằng Pandas. Để đọc các tệp CSV hoặc dấu phân cách read_csv này, chúng tôi sử dụng một chức năng của thư viện Pandas có tên là read_csv[]. .
Thanh phân cách dọc. Do đó, tệp được phân cách bằng thanh dọc có thể được đọc bởi. df = pd. read_csv["C. \Users\Rahul\Desktop\Ví dụ. csv", tháng chín = '. ']
Máy tách đại tràng. .
Dấu tách tab. .
Phần kết luận

Làm cách nào để đọc tệp CSV bằng Python bằng gấu trúc?

Để đọc tệp CSV trong từ điển Python Pandas, trước tiên hãy đọc tệp của chúng tôi trong DataFrame bằng phương thức read_csv[], sau đó chuyển đổi đầu ra thành từ điển bằng cách sử dụng phương thức Pandas DataFrame có sẵn . .

Phương pháp nào được sử dụng để đọc các giá trị được phân tách bằng dấu phẩy vào DataFrame?

Ở đây, chúng ta sẽ thảo luận về cách tải tệp csv vào Dataframe. Nó được thực hiện bằng cách sử dụng gấu trúc. Phương thức read_csv[] . Chúng ta phải nhập thư viện gấu trúc để sử dụng phương pháp này.

Chủ Đề