Làm cách nào để chuyển đổi CSV sang mảng 2D trong Python?
CSV là tệp giá trị được phân tách bằng dấu phẩy có. tiện ích mở rộng csv, cho phép lưu dữ liệu ở định dạng bảng. Show
Trong bài viết này, chúng ta sẽ tìm hiểu cách chuyển đổi dữ liệu của chuỗi CSV thành mảng đối tượng 2D, trong đó hàng đầu tiên của chuỗi là hàng tiêu đề bằng JavaScript Đưa ra một chuỗi giá trị được phân tách bằng dấu phẩy (CSV) cho một mảng 2D, sử dụng hàm Javascript Input: 'Name,Roll Number\nRohan,01\nAryan,02' Output: [ {Name: "Rohan", Roll Number: "01"}, {Name: "Aryan", Roll Number: "02"} ] // With delimiter ; Input: 'Name;Roll Number\nRohan;01\nAryan;02' Output: [ {Name: "Rohan", Roll Number: "01"}, {Name: "Aryan", Roll Number: "02"} ] Chúng ta phải biết một số hàm nguyên mẫu mảng và chuỗi sẽ hữu ích trong vấn đề này hàm indexOf. chuỗi. nguyên mẫu. hàm indexOf() tìm chỉ mục của lần xuất hiện đầu tiên của chuỗi đối số trong chuỗi đã cho và giá trị được trả về nằm trong chỉ mục dựa trên 0 Thí dụ str = 'How\nare\nyou?' str.indexOf('\n'); đầu ra 3 chức năng lát. Mảng. nguyên mẫu. slice() trả về một mảng mới chứa một phần của mảng mà nó được triển khai và mảng ban đầu vẫn giữ nguyên Thí dụ. ['a','b','c','d'].slice(1) đầu ra ['b','c','d'] chức năng bản đồ. Mảng. nguyên mẫu. phương thức map() trả về một mảng mới với kết quả gọi một hàm được cung cấp trên mọi phần tử Thí dụ arr = [2, 4, 8, 16] // Dividing each element of the array by 2 newArr = arr.map( item => item/2) đầu ra [1, 2, 4, 8] chức năng chia. chuỗi. nguyên mẫu. Phương thức split() được sử dụng để phân tách chuỗi đã cho thành một mảng các chuỗi bằng cách tách nó thành các chuỗi con bằng cách sử dụng dấu tách được chỉ định được cung cấp trong đối số Thí dụ str = "Geeks for Geeks" // Split the array when ' ' is located arr = str.split(' '); đầu ra Giảm chức năng. Mảng. nguyên mẫu. Phương thức reduce() trong JavaScript được sử dụng để giảm mảng thành một giá trị duy nhất và thực thi hàm được cung cấp cho từng phần tử của mảng từ trái sang phải và giá trị trả về của hàm được lưu trữ trong bộ tích lũy Thí dụ arr = [2,4,6,8] // Here 0 is the initial value of the accumulator // while traversing, currentValue has been added arr.reduce(function(accumulator,currentValue){ return accumulator+currentValue; },0) đầu ra str = 'How\nare\nyou?' str.indexOf('\n');0 Tiếp cận
Thí dụ. Trong ví dụ này, chúng tôi sẽ chuyển đổi một giá trị được phân tách bằng dấu phẩy (CSV) thành một mảng javascript bằng cách sử dụng các phương thức slice(), map(), split() và reduce() của Javascript Bạn có thể chuyển đổi tệp CSV thành mảng NumPy chỉ bằng cách gọi _______11_______5 với hai đối số. chuỗi 6 và chuỗi 7. Ví dụ: biểu thức 8 trả về một mảng NumPy từ 4 với các ký hiệu dấu phân cách import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)0 Đây là một ví dụ import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array) đầu ra
Phương pháp 2. np. loadtxt() với Tiêu đềnp. loadtxt() + tiêu đề Bạn có thể chuyển đổi tệp CSV có tiêu đề dòng đầu tiên thành mảng NumPy bằng cách gọi _____11_______5 với ba đối số. 6, import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)3 để bỏ qua dòng đầu tiên (tiêu đề) và chuỗi 7. Ví dụ: biểu thức import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)5 trả về một mảng NumPy từ 4 với các ký hiệu phân cách import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)0 trong khi bỏ qua dòng đầu tiênNhân vật. Bỏ qua dòng tiêu đề đầu tiên trong CSV bằng cách sử dụng đối số import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)8 của hàm import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)9 Đây là một ví dụ import numpy as np array = np.loadtxt('my_file.csv', skiprows=1, delimiter=',') print(array) đầu ra
Phương pháp 3. Trình đọc CSVTrình đọc CSV Để chuyển đổi tệp CSV 4 thành danh sách các danh sách trong Python, hãy sử dụng phương pháp 1 để tạo trình đọc tệp CSV. Sau đó chuyển đổi đối tượng kết quả thành một danh sách bằng hàm tạo 2. Bước cuối cùng, bạn có thể chuyển đổi danh sách lồng nhau thành mảng NumPy bằng cách sử dụng hàm tạo 3Đây là một ví dụ import numpy as np import csv csv_filename = 'my_file.csv' with open(csv_filename) as f: reader = csv.reader(f) lst = list(reader) print(lst) Đầu ra là danh sách các danh sách
Bây giờ, nếu bạn cần chuyển đổi nó thành một mảng NumPy, bạn chỉ cần sử dụng hàm 4 trên danh sách mới tạo như vậyarray = np.array(lst) print(array) đầu ra
🌎 Hướng dẫn liên quan. Cách chuyển đổi CSV thành Danh sách Danh sách trong Python Phương pháp 4. np. genfromtxt()np. genfromtxt() Bạn có thể chuyển đổi tệp CSV thành mảng NumPy chỉ bằng cách gọi _____18_______5 với hai đối số. chuỗi 6 và chuỗi 7. Ví dụ: biểu thức 8 trả về một mảng NumPy từ 4 với ký hiệu dấu phân cách import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)0 Đây là một ví dụ import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array) đầu ra
Phương pháp 5. Pandas read_csv() và df. to_numpy()read_csv() và df. to_numpy() Một cách nhanh chóng và hiệu quả để đọc CSV thành mảng NumPy là kết hợp hàm import numpy as np array = np.loadtxt('my_file.csv', skiprows=1, delimiter=',') print(array)1 của Pandas để đọc tệp CSV đã cho thành DataFrame với hàm import numpy as np array = np.loadtxt('my_file.csv', skiprows=1, delimiter=',') print(array)2 để chuyển đổi Pandas DataFrame thành mảng NumPy Đây là một ví dụ 2 đầu ra 3 🌎 Hướng dẫn liên quan. 17 cách để đọc tệp CSV vào khung dữ liệu Pandas Tóm lượcChúng tôi đã thấy năm cách để chuyển đổi tệp CSV thành mảng 2D NumPy
Cách ưa thích của chúng tôi là import numpy as np array = np.loadtxt('my_file.csv', delimiter=',') print(array)9 vì tính đơn giản và Pandas vì khả năng mở rộng của nó Nhiều chuyển đổi CSV Python hơn🐍 Tìm hiểu thêm. Tôi đã biên soạn một "hướng dẫn cuối cùng" trên blog Finxter để chỉ cho bạn phương pháp tốt nhất, tương ứng, để chuyển đổi tệp CSV thành JSON, Excel, từ điển, Parquet, danh sách, danh sách danh sách, danh sách bộ dữ liệu, tệp văn bản, DataFrame, Chris Trong khi làm việc với tư cách là một nhà nghiên cứu trong các hệ thống phân tán, Dr. Christian Mayer tìm thấy tình yêu của mình với việc dạy sinh viên khoa học máy tính Để giúp sinh viên đạt được mức độ thành công Python cao hơn, anh ấy đã thành lập trang web giáo dục lập trình Finxter. com. Ông là tác giả của cuốn sách lập trình nổi tiếng Python One-Liners (NoStarch 2020), đồng tác giả của loạt sách tự xuất bản Coffee Break Python, người đam mê khoa học máy tính, cộng tác viên tự do và chủ sở hữu của một trong 10 blog Python lớn nhất thế giới Niềm đam mê của anh ấy là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh ấy là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ nâng cao kỹ năng của mình. Bạn có thể tham gia học viện email miễn phí của anh ấy tại đây Làm cách nào để chuyển đổi tệp CSV thành mảng trong Python?Sử dụng phương thức reader() của thư viện csv
. Phương pháp này cũng có thể được sử dụng cho đầu ra nhiều dòng nhưng chúng ta phải chuyển đổi nhiều dòng bằng phương thức splitlines().
Làm cách nào để chuyển đổi tệp CSV thành mảng?Bạn có thể sử dụng. phương thức split() để chuyển đổi nó thành một mảng bằng mã như thế này. Trước tiên, mã phân tách chuỗi bằng \\n (ký tự dòng mới) để có từng dòng, sau đó sử dụng chức năng bản đồ để hoạt động trên từng dòng để phân tách từng dòng bằng dấu phân cách CSV - ,.
Làm cách nào để chuyển đổi CSV thành mảng NumPy?Để đọc dữ liệu CSV vào một mảng bản ghi trong NumPy, bạn có thể sử dụng hàm genfromtxt() của mô-đun NumPy , trong đối số của hàm này, bạn cần . Bạn cũng có thể sử dụng hàm pandas read_csv để đọc dữ liệu CSV thành một mảng bản ghi trong NumPy. df. mảng giá trị ([[ 1. , 2. , 3. ], [ 4. , 5. 5, 6. ]])
Chúng ta có thể tạo mảng 2D bằng Python không?Python cung cấp nhiều cách để tạo danh sách/mảng 2 chiều . Tuy nhiên, người ta phải biết sự khác biệt giữa những cách này vì chúng có thể tạo ra các phức tạp trong mã mà rất khó để tìm ra. |