step 1:库函数导入
import random
import numpy as np
# 使用基于类目特征的朴素贝叶斯
from sklearn.naive_bayes import CategoricalNB
from sklearn.model_selection import train_test_split
step 2:数据导入和分析
# 模拟数据
rng = np.random.RandomState(1) #随机数生成种子设置为“1”,确保别人和我自己的生成数字相同
# 随机生成600个100维的数据,每一维的特征都是[0, 4]之前的整数
X = rng.randint(5, size=(600, 100)) #相当于X=rng.randint(0,5, size=(600, 100)) ,其中0为最小值,(5-1)即4为最大值.
y = np.array([1, 2, 3, 4, 5, 6] * 100) #y是一维数据,shape为[600],其中1,2,3,4,5,6各有100个,并按顺序排列
data = np.c_[X, y] #把x和y进行配对,配对完成后data的shape为[600, 101],也就是在x的第二个维度增加了一列,作为每一行数据类别的label
random.shuffle(data) # X和y进行整体打散
X = data[:,:-1] #相当于x = data[:,0:-1],表示第一维度取完,第二维度出最后一列外取完
y = data[:, -1] # 表示第一维度取完,第二维度只取最后一列
X_train, X_test, y_