将数组拆分为预测矩阵和响应向量

splitting an array into predictor matrix and response vector

我认为这是一个非常微不足道的问题,但希望有人能帮助我。拆分包含预测变量(输入)和响应变量(输出)的数组的最佳方法是什么?

我导入了一个包含预测变量和响应的 csv 文件,但我想拆分它,以便预测变量位于 numpy 矩阵 (n X m) 中,而响应位于向量 (n X 1 ).有什么想法吗?

谢谢。

简单地使用导入的numpy数组的形状属性来确定m并使用切片提取子数组:

import numpy as np

# load csv data
data = np.loadtxt('data.txt', delimiter=',')
# m is the number of columns minus one
m = data.shape[1]-1
# use slicing to extract subarrays
pred = data[:,:m]
resp = data[:,m]

可以找到切片语法的一个很好的解释 here