如何在 python 中添加 class 标签?

How can I add class labels in python?

我有高斯数据是:

r1=np.random.multivariate_normal(mean1, cov1, 3000)
r2=np.random.multivariate_normal(mean2, cov2, 3000)

现在我想为这些数据添加 class 标签来训练 classifier。 对于 r1,它是 class1,对于 r2,它是 class2。如何添加 class 标签?

考虑将 class1 的 +1 作为标签 1,将 class 2 的 -1 作为标签 2:

label1 = np.ones( (r1.shape[0],1) )
label2 = np.ones( (r2.shape[0],1) ) * -1
data = np.concatenate((r1, r2))
labels = np.concatenate((label1, label2))

如果您需要在训练前打乱数据并且想要跟踪哪个标签对应哪个样本,请首先将每个标签添加到其对应的数据中:

r1 = np.append(label1, r1, axis=1)
r2 = np.append(label2, r2, axis=1)
data = np.concatenate((r1,r2))
np.random.shuffle(data)
labels = data[:,0] #extracts labels in shape of (len(labels),)which is a rank 1 array 
labels = np.reshape(labels,(len(labels),1)) #fix the shape to a 1D array    
R = data[:,(1,2)] #extracting inputs