Tôi gặp sự cố nhỏ khi cố gắng nhập dữ liệu từ tệp CSV với hàm loadtxt của numpy. Đây là mẫu của loại tệp dữ liệu tôi có.numpy loadtxt bỏ qua hàng đầu tiên
Gọi nó datafile1.csv ':
# Comment 1
# Comment 2
x,y,z
1,2,3
4,5,6
7,8,9
...
...
# End of File Comment
Các kịch bản mà tôi nghĩ sẽ làm việc cho tình hình này trông giống như:
import numpy as np
FH = np.loadtxt('datafile1.csv',comments='#',delimiter=',',skiprows=1)
Nhưng, tôi nhận được một lỗi:
ValueError: could not convert string to float: x
Điều này cho tôi biết kwarg 'skiprows' không bỏ qua tiêu đề, nó bỏ qua hàng đầu tiên của nhận xét. Tôi có thể chỉ đơn giản là đảm bảo rằng skiprows = 3, nhưng biến chứng là tôi có một số lượng rất lớn các tập tin, mà không nhất thiết phải có cùng một số dòng bình luận ở đầu tập tin. Làm thế nào tôi có thể chắc chắn rằng khi tôi sử dụng loadtxt tôi chỉ nhận được dữ liệu thực tế trong một tình huống như thế này?
P.S. - Tôi cũng sẵn sàng giải pháp bash.
Tôi cũng nên thêm rằng tôi đã cố gắng giải pháp khác nhau trong python để phân tích mỗi dòng cho một bình luận hoặc một nhân vật, nhưng nhanh chóng nhận ra không có gì của bản chất này có thể có thể làm việc vì loadtxt là không thành công ngay từ đầu. – astromax