Tôi có một bộ dữ liệu rất lớn và tôi không đủ khả năng để đọc toàn bộ bộ dữ liệu trong đó. Vì vậy, tôi đang nghĩ đến việc chỉ đọc một phần của nó để đào tạo nhưng tôi không biết phải làm thế nào. Bất kỳ suy nghĩ sẽ được đánh giá cao.
Câu trả lời:
Nếu bạn chỉ muốn đọc 999.999 hàng đầu tiên (không phải tiêu đề):
read_csv(..., nrows=999999)
Nếu bạn chỉ muốn đọc hàng 1.000.000 ... 1.999.999
read_csv(..., skiprows=1000000, nrows=999999)
nrows : int, mặc định Không có Số hàng của tệp cần đọc. Hữu ích để đọc các phần của tệp lớn *
bỏ qua : giống danh sách hoặc số nguyên Số hàng cần bỏ qua (được lập chỉ mục 0) hoặc số hàng cần bỏ qua (int) ở đầu tệp
và đối với các tệp lớn, có thể bạn cũng sẽ muốn sử dụng chunksize:
chunksize : int, mặc định Không có Đối tượng TextFileReader Trả về để lặp lại
nstart=,nend=...
. Bạn phải làm số học trênskiprows = nend - nrows
LIMIT nstart, skiprows
:: /
header=n/list
chunksize
là một chút khó khăn, bạn phải đối phó với các khối có kích thước không đồng đều. Cũng nên phân bổ trước các mảng / khung dữ liệu của bạn với kích thước cố định mà bạn biết mình sẽ cần, không thực hiện nối / nối động bất cứ khi nào bạn có thể tránh được.