百度做网站骗人到哪里去投诉,毕设代做网站招聘,wordpress前台头像,绿色主色调网站分类#xff08;Classification#xff09;指的是从数据中选出已经分好类的训练集#xff0c;在该训练集上运用数据挖掘分类的技术建立分类模型#xff0c;从而对没有分类的数据进行分类的分析方法。 分类问题的应用场景#xff1a;用于将事物打上一个标签#xff0c;通常… 分类Classification指的是从数据中选出已经分好类的训练集在该训练集上运用数据挖掘分类的技术建立分类模型从而对没有分类的数据进行分类的分析方法。 分类问题的应用场景用于将事物打上一个标签通常结果为离散值。例如判断一副图片上的动物是一只猫还是一只狗分类通常是建立在回归之上。 基本的分类方法—KNN最邻近分类算法简称KNN是最简单的机器学习算法之一。 核心逻辑在距离空间里如果一个样本的最接近的K个邻居里绝大多数属于某个类别则该样本也属于这个类别。 给定电影分类样例预测某一电影的分类。 from sklearn import neighbors #导入模块
import warnings
warnings.filterwarnings(ignore) #不发出警告df pd.DataFrame({name:[北京遇上西雅图,喜欢你,疯狂动物城,战狼2,力王,敢死队],fight:[3,2,1,101,99,98],kiss:[104,100,81,10,5,2],type:[love,love,love,action,action,action]})
love df[df[type]] love]
action df[df[type] action]
plt.scatter(love[fight],love[kiss],color red,label love) # 类型为爱情的电影做红色散点图
plt.scatter(action[fight],action[kiss],color green,labelaction) # 类型为动作片的电影做绿色散点图
plt.legend()knn neighbors.KNeighborsClassifier() # 创建KNN最邻近分类模型
knn.fit(df[[fight,kiss]],df[type]) # 给模型导入数据k knn.predict([[18, 90]]) # 预测数据参数需要是二维的
print(预测电影类型为%s%k,type(k)) # 预测电影类型为[love],class numpy.ndarray
plt.scatter(18,90,color blue,markerx,labelk)
plt.text(18,90,《你的名字》,colorblue) 另外随机生成一组数据用上面的knn分类模型进行分类 df2 pd.DataFrame(np.random.rand(100,2)*80,columns[fight,kiss])
df2[predictType] knn.predict(df2)plt.scatter(love[fight],love[kiss],color red,label love)
plt.scatter(action[fight],action[kiss],color green,labelaction)
plt.legend()plt.scatter(df2[df2[predictType]love][fight],df2[df2[predictType]love][kiss],color red,label love,markerx)
plt.scatter(df2[df2[predictType]action][fight],df2[df2[predictType]action][kiss],color green,labelaction,markerx)df2.head() 案例2植物分类 from sklearn import datasets
iris datasets.load_iris()
print(iris.data[:5]) #类型为class sklearn.utils.Bunch数据部分为一个二维数组
print(iris.feature_names)
print(iris.target_names)
# print(iris.target) #表示每一个数据所属的分类分类用数字表示结果为数组# [[5.1 3.5 1.4 0.2]
# [4.9 3. 1.4 0.2]
# [4.7 3.2 1.3 0.2]
# [4.6 3.1 1.5 0.2]
# [5. 3.6 1.4 0.2]]
#[sepal length (cm),sepal width (cm),petal length (cm),petal width (cm)]表示分类特征萼片长度、萼片宽度、花瓣长度、花瓣宽度
#[setosa versicolor virginica]表示分类名称 构建DataFrame方便查看数据并使用数字分类和名称分类分别构建模型 data pd.DataFrame(iris.data, columns iris.feature_names) #构建DataFrame方便查看
data[target] iris.target
print(data.head())
print(----------------------------)d pd.DataFrame({target:[0, 1, 2],target_names:iris.target_names})
print(d.head())
print(----------------------------)data pd.merge(data,d,ontarget) #最终形成的DataFrame包含四个分类特征、分类数值、分裂名称
print(data.head())
print(----------------------------)knn1 neighbors.KNeighborsClassifier()
knn1.fit(iris.data,iris.target) #使用分类数值构建模型
t1 knn1.predict([[0.1,0.2,0.3,0.4]])
print(所在分类(数字表示)为,t1)knn2 neighbors.KNeighborsClassifier()
knn2.fit(iris.data,data[target_names]) #使用分类名称构建模型
t2 knn2.predict([[0.1,0.2,0.3,0.4]])
print(所在分类(名称表示)为,t2) # 上述输出结果# sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) target
# 0 5.1 3.5 1.4 0.2 0
# 1 4.9 3.0 1.4 0.2 0
# 2 4.7 3.2 1.3 0.2 0
# 3 4.6 3.1 1.5 0.2 0
# 4 5.0 3.6 1.4 0.2 0
# ----------------------------
# target target_names
# 0 0 setosa
# 1 1 versicolor
# 2 2 virginica
# ----------------------------
# sepal length (cm) sepal width (cm) petal length (cm) petal width (cm) target target_names
# 0 5.1 3.5 1.4 0.2 0 setosa
# 1 4.9 3.0 1.4 0.2 0 setosa
# 2 4.7 3.2 1.3 0.2 0 setosa
# 3 4.6 3.1 1.5 0.2 0 setosa
# 4 5.0 3.6 1.4 0.2 0 setosa
# ----------------------------
# 所在分类(数字表示)为 [0]
# 所在分类(名称表示)为 [setosa] 转载于:https://www.cnblogs.com/Forever77/p/11385689.html