Tôi có tệp CSV mà tôi đã tải xuống từ trang web của WHO (http://apps.who.int/gho/data/view.main.52160, Tài nguyên đã tải xuống, "bảng đa năng ở định dạng CSV"). Tôi cố gắng để tải các tập tin vào một mảng numpy. Dưới đây là mã của tôi:Đang tải tệp UTF-8 bằng Python 3 bằng cách sử dụng numpy.genfromtxt
import numpy
#U75 - unicode string of max. length 75
world_alcohol = numpy.genfromtxt("xmart.csv", dtype="U75", skip_header=2, delimiter=",")
print(world_alcohol)
Và tôi nhận
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 2: ordinal not in range(128).
Tôi đoán NumPy rằng có một vấn đề đọc chuỗi "Côte d'Ivoire". Tệp được mã hóa đúng UTF-8 (theo trình soạn thảo văn bản của tôi). Tôi đang sử dụng Python 3.4.3 và gumpy 1.9.2.
Tôi đang làm gì sai? Làm thế nào tôi có thể đọc các tập tin vào numpy?
Không OP nhưng cảm ơn vì sự tích lũy rõ ràng và hữu ích của câu trả lời. – KobeJohn
Cảm ơn bạn đã trả lời. Nó hoạt động! Tôi chỉ mới bắt đầu với Python và tôi thấy nó kỳ quặc đến mức không thể đọc được UTF-8 out-of-the-box. Tôi đã đọc rằng Python là dễ dàng và phát triển với sự đơn giản và dễ sử dụng trong tâm trí chưa đọc UTF-8 đòi hỏi phải hội tụ bổ sung? Tôi nghĩ chúng ta đang sống vào năm 2015. – JustAC0der