我有一个包含60,000个条目的csv文件。我读了它们并存储在这样的嵌套列表中:
entries = []
with open('mnist_train.csv', 'r') as f:
mycsv = csv.reader(f)
for row in mycsv:
entries.append(row)
我不会阅读全部60,000,而是如何只阅读前千个条目?
我尝试了这个没有成功:
entries = []
with open('mnist_train.csv', 'r') as f:
mycsv = csv.reader(f)
for row in mycsv[:1000]:
entries.append(row)
答案 0 :(得分:3)
正如您发现csv.reader
不支持切片。您可以使用itertools.islice()来实现可迭代的对象。如,
import itertools
entries = []
with open('mnist_train.csv', 'r') as f:
mycsv = csv.reader(f)
for row in itertools.islice(mycsv, 1000):
entries.append(row)
答案 1 :(得分:0)
您可以使用pandas library-
import pandas as pd
data = pd.read_csv('path/to/your/file.csv',nrows=1000)
data_list = data.values.tolist() #creates a list of the first 1000 rows (excludes header)