import numpy as np
import csv
def load_csv(filename, target_dtype, features_dtype, target_column=-1):
"""Load dataset from CSV file with a header row."""
with open(filename) as f:
reader_file = csv.reader(f)
header = next(reader_file)
n_samples = int(header[0])
n_features = int(header[1])
data = np.zeros((n_samples, n_features), dtype=features_dtype)
target = np.zeros((n_samples,), dtype=target_dtype)
for i, row in enumerate(data_file):
target[i] = np.asarray(row.pop(target_column), dtype=target_dtype)
data[i] = np.asarray(row, dtype=features_dtype)
return data, target
调用:
train_file = r'./Datasets/train.csv'
training_data, training_target = load_csv(train_file, target_dtype=np.int, eatures_dtype=np.float32)
PS:还有一篇用Pandas读取csv文件。 https://my.oschina.net/kilosnow/blog/1619565