当前位置: 首页 > news >正文

机器学习-KNN分类算法

1.1 KNN分类

        KNN分类算法(K-Nearest-Neighbors Classification),又叫K近邻算法。它是概念极其简单,而效果又很优秀的分类算法。1967年由Cover T和Hart P提出。

        KNN分类算法的核心思想:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。

        如图,假设已经获取一些动物的特征,且已知这些动物的类别。现在需要识别一只新动物,判断它是哪类动物。首先找到与这个物体最接近的k个动物。假设k=3,则可以找到2只猫和1只狗。由于找到的结果中大多数是猫,则把这个新动物划分为猫类。

KNN方法有三个核心要素:

1.K值

        如果k取值太小,好处是近似误差会减小。但同时预测结果对近邻的样本点非常敏感,仅由非常近的训练样本决定预测结果。使模型变得复杂,容易过拟合。如果k值太大,学习的近似误差会增大,导致分类模糊,即欠拟合。

        下面举例看k值对预测结果的影响。对图5.2中的动物进行分类,当k=3时,分类结果为“猫:狗=2:1”,所以属于猫;当k=5时,表决结果为“猫:狗:熊猫=2:3:1”,所以判断目标动物为狗。

 

        那么K值到底怎么选取呢?涉及到距离的度量问题。

2.距离的度量

        不同的距离所确定的近邻点不同。平面上比较常用的是欧式距离。此外还有曼哈顿距离、余弦距离、球面距离等。

可以得到距离如下所示

3.分类决策规则

        分类结果的确定往往采用多数表决原则,即由输入实例的k个最邻近的训练实例中的多数类决定输入实例的类别。

1.2 初识KNN——鸢尾花分类

1.查看数据

SKlearn中的iris数据集有5个key,分别如下:

  • target_names : 分类名称,包括setosa、versicolor和virginica类。
  • data : 特征数据值。
  • target:分类(150个)。
  • DESCR: 数据集的简介。
  • feature_names: 特征名称。

【例】查看鸢尾花iris数据集。

#【例1.1】对鸢尾花iris数据集进行调用,查看数据的各方面特征。
from sklearn.datasets import load_iris
iris_dataset = load_iris()
#下面是查看数据的各项属性
print("数据集的Keys:\n",iris_dataset.keys())     #查看数据集的keys。
print("特征名:\n",iris_dataset['feature_names'])  #查看数据集的特征名称
print("数据类型:\n",type(iris_dataset['data']))    #查看数据类型
print("数据维度:\n",iris_dataset['data'].shape)    #查看数据的结构
print("前五条数据:\n{}".format(iris_dataset['data'][:5]))  #查看前5条数据
#查看分类信息
print("标记名:\n",iris_dataset['target_names']) 
print("标记类型:\n",type(iris_dataset['target']))
print("标记维度:\n",iris_dataset['target'].shape)
print("标记值:\n",iris_dataset['target'])
#查看数据集的简介
print('数据集简介:\n',iris_dataset['DESCR'][:20] + "\n.......")  #数据集简介前20个字符
运行结果: 
数据集的Keys:dict_keys(['data', 'target', 'target_names', 'DESCR', 'feature_names'])
特征名:['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']
数据类型:<class 'numpy.ndarray'>
数据维度:(150, 4)
前五条数据:
[[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]]
标记名:['setosa' 'versicolor' 'virginica']
标记类型:<class 'numpy.ndarray'>
标记维度:(150,)
标记值:[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 22 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 22 2]
数据集简介:Iris Plants Database
.......
 2.数据集拆分

        使用train_test_split函数。train_test_split函数属于sklearn.model_selection类中的交叉验证功能,能随机地将样本数据集合拆分成训练集和测试集。

【例】对iris数据集进行拆分,并查看拆分结果。

#【例1.2】对iris数据集进行拆分,并查看拆分结果。
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
iris_dataset = load_iris()
X_train, X_test, y_train, y_test = train_test_split( iris_dataset['data'], iris_dataset['target'], random_state=2)
print("X_train",X_train)
print("y_train",y_train)
print("X_test",X_test)
print("y_test",y_test)
print("X_train shape: {}".format(X_train.shape))
print("X_test shape: {}".format(X_test.shape))
运行结果:
X_train [[5.5 2.3 4.  1.3][6.9 3.1 5.1 2.3][6.  2.9 4.5 1.5][6.2 2.9 4.3 1.3][6.8 3.2 5.9 2.3][5.  2.3 3.3 1. ][4.8 3.4 1.6 0.2][6.1 2.6 5.6 1.4][5.2 3.4 1.4 0.2][6.7 3.1 4.4 1.4][5.1 3.5 1.4 0.2][5.2 3.5 1.5 0.2][5.5 3.5 1.3 0.2][4.9 2.5 4.5 1.7][6.2 3.4 5.4 2.3][7.9 3.8 6.4 2. ][5.4 3.4 1.7 0.2][6.7 3.1 5.6 2.4][6.3 3.4 5.6 2.4][7.6 3.  6.6 2.1][6.  2.2 5.  1.5][4.3 3.  1.1 0.1][4.8 3.1 1.6 0.2][5.8 2.7 5.1 1.9][5.7 2.8 4.1 1.3][5.2 2.7 3.9 1.4][7.7 3.  6.1 2.3][6.3 2.7 4.9 1.8][6.1 2.8 4.  1.3][5.1 3.7 1.5 0.4][5.7 2.8 4.5 1.3][5.4 3.9 1.3 0.4][5.8 2.8 5.1 2.4][5.8 2.6 4.  1.2][5.1 2.5 3.  1.1][5.7 3.8 1.7 0.3][5.5 2.4 3.7 1. ][5.9 3.  4.2 1.5][6.7 3.1 4.7 1.5][7.7 2.8 6.7 2. ][4.9 3.  1.4 0.2][6.3 3.3 4.7 1.6][5.1 3.8 1.5 0.3][5.8 2.7 3.9 1.2][6.9 3.2 5.7 2.3][4.9 3.1 1.5 0.1][5.  2.  3.5 1. ][4.9 3.1 1.5 0.1][5.  3.5 1.3 0.3][5.4 3.7 1.5 0.2][6.8 3.  5.5 2.1][6.3 3.3 6.  2.5][5.  3.4 1.6 0.4][5.2 4.1 1.5 0.1][6.3 2.5 5.  1.9][7.7 2.6 6.9 2.3][6.  2.2 4.  1. ][7.2 3.6 6.1 2.5][4.9 2.4 3.3 1. ][6.1 2.8 4.7 1.2][6.5 3.  5.2 2. ][5.1 3.5 1.4 0.3][7.4 2.8 6.1 1.9][5.9 3.  5.1 1.8][6.4 2.7 5.3 1.9][4.4 2.9 1.4 0.2][5.6 2.8 4.9 2. ][5.1 3.4 1.5 0.2][5.  3.3 1.4 0.2][5.7 2.6 3.5 1. ][6.9 3.1 5.4 2.1][5.5 2.6 4.4 1.2][6.3 2.8 5.1 1.5][7.  3.2 4.7 1.4][6.8 2.8 4.8 1.4][6.5 3.2 5.1 2. ][6.9 3.1 4.9 1.5][5.5 2.4 3.8 1.1][5.6 3.  4.5 1.5][6.  3.  4.8 1.8][6.  2.7 5.1 1.6][5.8 2.7 5.1 1.9][5.9 3.2 4.8 1.8][5.1 3.8 1.6 0.2][6.2 2.2 4.5 1.5][5.6 3.  4.1 1.3][5.6 2.5 3.9 1.1][5.8 2.7 4.1 1. ][6.4 3.1 5.5 1.8][6.6 2.9 4.6 1.3][5.5 4.2 1.4 0.2][4.4 3.  1.3 0.2][6.3 2.9 5.6 1.8][6.4 3.2 4.5 1.5][7.3 2.9 6.3 1.8][5.  3.6 1.4 0.2][7.1 3.  5.9 2.1][4.9 3.1 1.5 0.1][6.5 3.  5.5 1.8][6.7 3.3 5.7 2.1][5.4 3.4 1.5 0.4][6.1 2.9 4.7 1.4][4.6 3.2 1.4 0.2][6.7 3.  5.2 2.3][5.7 3.  4.2 1.2][5.  3.4 1.5 0.2][6.5 3.  5.8 2.2][6.6 3.  4.4 1.4][5.  3.5 1.6 0.6][4.6 3.6 1.  0.2][6.3 2.5 4.9 1.5][5.7 4.4 1.5 0.4]]
y_train [1 2 1 1 2 1 0 2 0 1 0 0 0 2 2 2 0 2 2 2 2 0 0 2 1 1 2 2 1 0 1 0 2 1 1 0 11 1 2 0 1 0 1 2 0 1 0 0 0 2 2 0 0 2 2 1 2 1 1 2 0 2 2 2 0 2 0 0 1 2 1 2 11 2 1 1 1 2 1 2 1 0 1 1 1 1 2 1 0 0 2 1 2 0 2 0 2 2 0 1 0 2 1 0 2 1 0 0 10]
X_test [[4.6 3.4 1.4 0.3][4.6 3.1 1.5 0.2][5.7 2.5 5.  2. ][4.8 3.  1.4 0.1][4.8 3.4 1.9 0.2][7.2 3.  5.8 1.6][5.  3.  1.6 0.2][6.7 2.5 5.8 1.8][6.4 2.8 5.6 2.1][4.8 3.  1.4 0.3][5.3 3.7 1.5 0.2][4.4 3.2 1.3 0.2][5.  3.2 1.2 0.2][5.4 3.9 1.7 0.4][6.  3.4 4.5 1.6][6.5 2.8 4.6 1.5][4.5 2.3 1.3 0.3][5.7 2.9 4.2 1.3][6.7 3.3 5.7 2.5][5.5 2.5 4.  1.3][6.7 3.  5.  1.7][6.4 2.9 4.3 1.3][6.4 3.2 5.3 2.3][5.6 2.7 4.2 1.3][6.3 2.3 4.4 1.3][4.7 3.2 1.6 0.2][4.7 3.2 1.3 0.2][6.1 3.  4.9 1.8][5.1 3.8 1.9 0.4][7.2 3.2 6.  1.8][6.2 2.8 4.8 1.8][5.1 3.3 1.7 0.5][5.6 2.9 3.6 1.3][7.7 3.8 6.7 2.2][5.4 3.  4.5 1.5][5.8 4.  1.2 0.2][6.4 2.8 5.6 2.2][6.1 3.  4.6 1.4]]
y_test [0 0 2 0 0 2 0 2 2 0 0 0 0 0 1 1 0 1 2 1 1 1 2 1 1 0 0 2 0 2 2 0 1 2 1 0 21]
X_train shape: (112, 4)
X_test shape: (38, 4)
3.使用散点矩阵查看数据特征关系

        在数据分析中,同时观察一组变量的散点图是很有意义的,这也被称为散点图矩阵(scatter plot matrix)。创建这样的图表工作量巨大,可以使用scatter_matrix函数。scatter_matrix函数是Pandas提供了一个能从DataFrame创建散点图矩阵的函数。

【例】对鸢尾花数据结果,使用scatter_matrix显示训练集与测试集的散点图矩阵。

#【例5.3】使用scatter_matrix显示训练集与测试集。
import pandas as pd
iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names)
# 创建一个scatter matrix,颜色值来自y_train
pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), marker='o', hist_kwds={'bins': 20}, s=60, alpha=.8)
运行结果:

4.建立KNN模型

        在Python中,实现KNN方法使用的是KNeighborsClassifier类,KNeighborsClassifier类属于Scikit-learn的neighbors包。

核心操作包括以下三步:

  1. 创建KNeighborsClassifier对象,并进行初始化
  2. 调用fit()方法,对数据集进行训练
  3. 调用predict()函数,对测试集进行预测

使用KNN对鸢尾花iris数据集进行分类的完整代码如下:

from sklearn import datasets
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
#导入鸢尾花数据并查看数据特征
iris = datasets.load_iris()
print('数据集结构:',iris.data.shape)
# 获取属性
iris_X = iris.data
# 获取类别
iris_y = iris.target
# 划分成测试集和训练集
iris_train_X,iris_test_X,iris_train_y,iris_test_y=train_test_split(iris_X,iris_y,test_size=0.2, random_state=0)
#分类器初始化
knn = KNeighborsClassifier()
#对训练集进行训练
knn.fit(iris_train_X, iris_train_y)
#对测试集数据的鸢尾花类型进行预测
predict_result = knn.predict(iris_test_X)
print('测试集大小:',iris_test_X.shape)
print('真实结果:',iris_test_y)
print('预测结果:',predict_result)
#显示预测精确率
print('预测精确率:',knn.score(iris_test_X, iris_test_y))

运行结果:

数据集结构: (150, 4)
测试集大小: (30, 4)
真实结果: [2 1 0 2 0 2 0 1 1 1 2 1 1 1 1 0 1 1 0 0 2 1 0 0 2 0 0 1 1 0]
预测结果: [2 1 0 2 0 2 0 1 1 1 2 1 1 1 2 0 1 1 0 0 2 1 0 0 2 0 0 1 1 0]
预测精确率: 0.9666666666666667

相关文章:

机器学习-KNN分类算法

1.1 KNN分类 KNN分类算法&#xff08;K-Nearest-Neighbors Classification&#xff09;&#xff0c;又叫K近邻算法。它是概念极其简单&#xff0c;而效果又很优秀的分类算法。1967年由Cover T和Hart P提出。 KNN分类算法的核心思想&#xff1a;如果一个样本在特征空间中的k个最…...

云计算 Cloud Computing

文章目录 1、云计算2、背景3、云计算的特点4、云计算的类型&#xff1a;按提供的服务划分5、云计算的类型&#xff1a;按部署的形式划分 1、云计算 定义&#xff1a; 云计算是一种按使用量付费的模式&#xff0c;这种模式提供可用的、便捷的、按需的网络访问&#xff0c;进入可…...

【算法】DFS 系列之 穷举/暴搜/深搜/回溯/剪枝(上篇)

【ps】本篇有 9 道 leetcode OJ。 目录 一、算法简介 二、相关例题 1&#xff09;全排列 .1- 题目解析 .2- 代码编写 2&#xff09;子集 .1- 题目解析 .2- 代码编写 3&#xff09;找出所有子集的异或总和再求和 .1- 题目解析 .2- 代码编写 4&#xff09;全排列 II…...

怎么绕开华为纯净模式安装软件

我是标题 众所周不知&#xff0c;华为鸿蒙系统自带纯净模式&#xff0c;而且 没法关闭 : ) 我反正没找到关闭键 以前或许会有提示&#xff0c;无视风险&#xff0c;“仍要安装”。但我这次遇到的问题是&#xff0c;根本没有这个选项&#xff0c;只有“应用市场”和“取消”&…...

CentOS7 离线部署docker和docker-compose环境

一、Docker 离线安装 1. 下载docker tar.gz包 下载地址&#xff1a; Index of linux/static/stable/x86_64/ 本文选择版本&#xff1a;23.0.6 2.创建docker.service文件 vi docker.service文件内容如下&#xff1a; [Unit] DescriptionDocker Application Container Engi…...

Vue 自定义组件实现 v-model 的几种方式

前言 在 Vue 中&#xff0c;v-model 是一个常用的指令&#xff0c;用于实现表单元素和组件之间的双向绑定。当我们使用原生的表单元素时&#xff0c;直接使用 v-model 是很方便的&#xff0c;但是对于自定义组件来说&#xff0c;要实现类似的双向绑定功能就需要一些额外的处理…...

Python Pandas数据处理效率提升指南

大家好&#xff0c;在数据分析中Pandas是Python中最常用的库之一&#xff0c;然而当处理大规模数据集时&#xff0c;Pandas的性能可能会受到限制&#xff0c;导致数据处理变得缓慢。为了提升Pandas的处理速度&#xff0c;可以采用多种优化策略&#xff0c;如数据类型优化、向量…...

最大正方形 Python题解

最大正方形 题目描述 在一个 n m n\times m nm 的只包含 0 0 0 和 1 1 1 的矩阵里找出一个不包含 0 0 0 的最大正方形&#xff0c;输出边长。 输入格式 输入文件第一行为两个整数 n , m ( 1 ≤ n , m ≤ 100 ) n,m(1\leq n,m\leq 100) n,m(1≤n,m≤100)&#xff0c;接…...

ubuntu中软件的进程管理-结束软件运行

在Ubuntu系统中&#xff0c;当某个运行中的软件无法正常退出时&#xff0c;可以通过以下几种方法强制结束该软件&#xff1a; 方法一&#xff1a;使用系统监视器&#xff08;System Monitor&#xff09;–小白专属 这个相当于win上的资源管理器 打开系统监视器 可以通过点击屏…...

Windows环境部署Oracle 11g

Windows环境部署Oracle 11g 1.安装包下载2. 解压安装包3. 数据库安装3.1 执行安装脚本3.2 电子邮件设置3.3 配置安装选项3.4 配置系统类3.5 选择数据库安装类型3.6 选择安装类型3.7 数据库配置3.8 确认安装信息3.9 设置口令 Oracle常用命令 2023年10月中旬就弄出大致的文章&…...

C语言进阶【8】--联合体和枚举(联合体和枚举这么好用,你不想了解一下吗?)

本章概述 联合体类型的声明联合体的特点联合体的大小的计算枚举类型的声明枚举类型的优点枚举类型的使用枚举类型的大小彩蛋时刻&#xff01;&#xff01;&#xff01; 联合体类型的声明 概述&#xff1a;联合体的关键字为 union。它的结构和结构体是一样的。进行展示&#xf…...

Android OTA升级

针对Android系统OTA升级&#xff0c;MTK平台有相关介绍文档&#xff1a;https://online.mediatek.com/apps/faq/detail?faqidFAQ27117&listSW 概念一&#xff1a;OTA包的构建 AOSP full build&#xff1a;Android原生提供的全量包的构建&#xff0c;意思就是可以从任何一…...

【项目经验分享】深度学习自然语言处理技术毕业设计项目案例定制

以下毕业设计是与深度学习自然语言处理&#xff08;NLP&#xff09;相关的毕业设计项目案例&#xff0c;涵盖文本分类、生成式模型、语义理解、机器翻译、对话系统、情感分析等多个领域&#xff1a; 实现案例截图&#xff1a; 基于深度学习的文本分类系统基于BERT的情感分析系…...

一觉醒来,YOLO11 冷不丁就来了

&#x1f947; 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连 &#x1f389; 声明: 作为全网 AI 领域 干货最多的博主之一&#xff0c;❤️ 不负光阴不负卿 ❤️ 文章目录 前言&#xff1a;一觉醒来&#xff0c;YOLO11 冷不丁就来了ultralytics 版本更新…...

智能编辑器、版本控制与自动化脚本

在繁忙的工作中&#xff0c;每个开发者都渴望拥有一个“秘密武器”&#xff0c;帮助自己提升效率、减少错误&#xff0c;从而更快地完成任务。那么&#xff0c;在众多编程工具中&#xff0c;哪一款能够成为你的工作效率翻倍的“秘密武器”呢&#xff1f;本文将探讨智能的代码编…...

jenkinsfile实现镜像构建、发布

实现代码打包编译 容器镜像构建 jenkins编译采用docker构建。 遇到问题: 1.需要限制docker 容器的内存和cpu docker { image ‘ccr.ccs.tencentyun.com/libary/maven:3.6.3-jdk-8’ args “-v ${WORKSPACE}:/workspace --memory‘2048m’ --cpus‘1’” } 2.jenkins构建需要限制…...

OSPF路由计算

关于OSPF路由的基础概述可以看看这篇博客 动态路由---OSPF协议基础https://blog.csdn.net/ZZZCY2003/article/details/141335261 区域内路由计算 LSA概述 LSA是OSPF进行路由计算的关键依据OSPF的LSU报文可以携带多种不同类型的LSA各种类型的LSA拥有相同的报文头部 重要字段解…...

【设计模式-迭代】

定义 迭代器模式&#xff08;Iterator Pattern&#xff09;是一种行为型设计模式&#xff0c;用于提供一种顺序访问集合对象元素的方式&#xff0c;而不暴露该对象的内部表示。通过迭代器&#xff0c;客户端可以在不需要了解集合实现的细节的情况下遍历集合中的元素。 UML图 …...

k8s搭建双主的mysql8集群---无坑

《k8s搭建一主三从的mysql8集群---无坑-CSDN博客》通过搭建一主三从&#xff0c;我们能理解到主节点只有1个&#xff0c;那么承担增删改主要还是主节点&#xff0c;如果你在从节点上去操作增删改操作&#xff0c;数据不会同步到其他节点。本章我们将实现多主&#xff08;双主&a…...

Iterm2配置主题和Oh-My-Zsh

文章目录 一、配置主题1.1 安装使用git1.2 安装手册1.2.1 激活使用主题 二、配置oh-my-zsh2.1、oh-my-zsh插件2.2、oh-my-zsh主题 [Zsh](http://zsh.org/)2.2.1、Install using Git2.2.2、Install manually2.2.3、Activating theme2.2.4、Install using [zplug](https://github…...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序

一、开发准备 ​​环境搭建​​&#xff1a; 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 ​​项目创建​​&#xff1a; File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

苍穹外卖--缓存菜品

1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得&#xff0c;如果用户端访问量比较大&#xff0c;数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据&#xff0c;减少数据库查询操作。 缓存逻辑分析&#xff1a; ①每个分类下的菜品保持一份缓存数据…...

什么是EULA和DPA

文章目录 EULA&#xff08;End User License Agreement&#xff09;DPA&#xff08;Data Protection Agreement&#xff09;一、定义与背景二、核心内容三、法律效力与责任四、实际应用与意义 EULA&#xff08;End User License Agreement&#xff09; 定义&#xff1a; EULA即…...

微信小程序云开发平台MySQL的连接方式

注&#xff1a;微信小程序云开发平台指的是腾讯云开发 先给结论&#xff1a;微信小程序云开发平台的MySQL&#xff0c;无法通过获取数据库连接信息的方式进行连接&#xff0c;连接只能通过云开发的SDK连接&#xff0c;具体要参考官方文档&#xff1a; 为什么&#xff1f; 因为…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

Python ROS2【机器人中间件框架】 简介

销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...