基于决策树、随机森林和层次聚类对帕尔默企鹅数据分析

news2024/10/6 22:25:07

在这里插入图片描述

作者:i阿极

作者简介:数据分析领域优质创作者、多项比赛获奖者:博主个人首页

😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍

📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪


大家好,我i阿极。喜欢本专栏的小伙伴,请多多支持

专栏案例:机器学习案例
机器学习(一):线性回归之最小二乘法
机器学习(二):线性回归之梯度下降法
机器学习(三):基于线性回归对波士顿房价预测
机器学习(四):基于KNN算法对鸢尾花类别进行分类预测
机器学习(五):基于KNN模型对高炉发电量进行回归预测分析
机器学习(六):基于高斯贝叶斯对面部皮肤进行预测分析
机器学习(七):基于多项式贝叶斯对蘑菇毒性分类预测分析
机器学习(八):基于PCA对人脸识别数据降维并建立KNN模型检验
机器学习(十四):基于逻辑回归对超市销售活动预测分析
机器学习(十五):基于神经网络对用户评论情感分析预测
机器学习(十六):线性回归分析女性身高与体重之间的关系
机器学习(十七):基于支持向量机(SVM)进行人脸识别预测
机器学习(十八):基于逻辑回归对优惠券使用情况预测分析
机器学习(十九):基于逻辑回归对某银行客户违约预测分析
机器学习(二十):LightGBM算法原理(附案例实战)
机器学习(二十一):基于朴素贝叶斯对花瓣花萼的宽度和长度分类预测
机器学习(二十二):基于逻辑回归(Logistic Regression)对股票客户流失预测分析

文章目录

  • 1、前言
  • 2、数据说明
  • 3、种类分布及其在不同岛屿上的分布
  • 4、企鹅身体测量特征的相关性分析
  • 5、种类特征差异
  • 6、性别差异分析
  • 7、岛屿影响分析
  • 8、喙长与鳍状肢长度(按岛屿区分)
  • 9、预测模型
    • 9.1决策树
    • 9.2随机森林
    • 9.3层次聚类分析
  • 总结


1、前言

随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。Palmer Penguins 数据集是近年来在数据科学和机器学习领域受到关注的一个数据集,经常被用作鸢尾花数据集的一个替代品。
数据集包含了对南极洲不同地区生活的企鹅种群的研究数据,主要用于数据探索和可视化,以及分类任务。

2、数据说明

英文字段中文字段描述
species种类Gentoo:巴布亚企鹅(也叫金图企鹅);Adelie:阿德利企鹅;Chinstrap:帽带企鹅
culmen_length_mm喙长(毫米)喙的长度(毫米)
culmen_depth_mm喙深(毫米)喙的深度(毫米)
flipper_length_mm鳍状肢长度(毫米)鳍状肢的长度(毫米)
body_mass_g体重(克)体重(克)
island岛屿名称梦想岛、托尔格森岛、比斯科岛
sex性别企鹅的性别

以上为简化后的数据字段

3、种类分布及其在不同岛屿上的分布

通过 Pandas 读取企鹅尺寸数据集 penguins_size.csv。使用 Seaborn 设置图表的美观风格为白色网格。利用 Seaborn 绘制条形图展示不同种类企鹅的分布情况。绘制不同岛屿上企鹅种类分布的条形图,通过不同颜色的条形表示不同的企鹅种类,并添加图例说明。使用 Matplotlib 展示绘制的图表,包括设置图表的标题、横轴标签、纵轴标签等元素。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 加载数据
penguins_size_df = pd.read_csv(r'D:\model\帕尔默企鹅数据\penguins_size.csv')

# 设置图表的美观风格
sns.set(style="whitegrid")

# 绘制企鹅种类分布的条形图
plt.figure(figsize=(8, 6))
sns.countplot(data=penguins_size_df, x='species')
plt.title('Distribution of Penguin Species')
plt.xlabel('Species')
plt.ylabel('Count')
plt.show()

# 绘制不同岛屿上企鹅种类分布的条形图
plt.figure(figsize=(10, 6))
sns.countplot(data=penguins_size_df, x='island', hue='species')
plt.title('Distribution of Penguin Species Across Different Islands')
plt.xlabel('Island')
plt.ylabel('Count')
plt.legend(title='Species')
plt.show()

在这里插入图片描述
在这里插入图片描述

4、企鹅身体测量特征的相关性分析

通过 Pandas 计算选定特征(culmen_length_mm、culmen_depth_mm、flipper_length_mm、body_mass_g)的相关系数矩阵。利用 Seaborn 绘制相关性热图,通过颜色深浅表示不同特征之间的相关性强度。annot=True 参数用于在图中显示具体的相关系数数值,cmap=‘coolwarm’ 参数选择了颜色映射方案,fmt=“.2f” 参数控制显示的小数位数。使用 Matplotlib 展示绘制的相关性热图,并添加图表的标题。该可视化图表有助于直观地理解不同企鹅物理测量特征之间的相关性程度,深入分析数据集的关联性。

# 计算相关系数矩阵
correlation_matrix = penguins_size_df[['culmen_length_mm', 'culmen_depth_mm', 'flipper_length_mm', 'body_mass_g']].corr()

# 绘制相关性热图
plt.figure(figsize=(10, 8))
sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm', fmt=".2f")
plt.title('Correlation Matrix of Penguin Physical Measurements')
plt.show()

在这里插入图片描述

5、种类特征差异

加载企鹅物理测量数据集。设置整体图表布局为2x2的子图,总图表大小为(15, 12)。在每个子图中绘制不同物理测量特征(culmen_length_mm、culmen_depth_mm、flipper_length_mm、body_mass_g)的箱线图,通过不同种类企鹅进行分组。设置每个子图的标题、横轴标签、纵轴标签,以及总图表的标题。使用 plt.tight_layout(rect=[0, 0.03, 1, 0.95]) 调整布局,避免子图重叠。
该可视化图表展示了不同企鹅物理测量特征在不同种类企鹅间的分布差异,通过箱线图直观呈现了数据的分布范围、中位数和离群值等信息。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 加载数据
# penguins_size_df = pd.read_csv('penguins_size.csv')

# 设置整体图表布局
fig, axes = plt.subplots(2, 2, figsize=(15, 12))
fig.suptitle('Physical Measurement Differences Among Penguin Species', fontsize=16)

# 喙长的箱线图
sns.boxplot(ax=axes[0, 0], data=penguins_size_df, x='species', y='culmen_length_mm')
axes[0, 0].set_title('Culmen Length (mm)')
axes[0, 0].set_xlabel('Species')
axes[0, 0].set_ylabel('Culmen Length (mm)')

# 喙深的箱线图
sns.boxplot(ax=axes[0, 1], data=penguins_size_df, x='species', y='culmen_depth_mm')
axes[0, 1].set_title('Culmen Depth (mm)')
axes[0, 1].set_xlabel('Species')
axes[0, 1].set_ylabel('Culmen Depth (mm)')

# 鳍状肢长度的箱线图
sns.boxplot(ax=axes[1, 0], data=penguins_size_df, x='species', y='flipper_length_mm')
axes[1, 0].set_title('Flipper Length (mm)')
axes[1, 0].set_xlabel('Species')
axes[1, 0].set_ylabel('Flipper Length (mm)')

# 体重的箱线图
sns.boxplot(ax=axes[1, 1], data=penguins_size_df, x='species', y='body_mass_g')
axes[1, 1].set_title('Body Mass (g)')
axes[1, 1].set_xlabel('Species')
axes[1, 1].set_ylabel('Body Mass (g)')

plt.tight_layout(rect=[0, 0.03, 1, 0.95])
plt.show()

在这里插入图片描述

6、性别差异分析

加载企鹅物理测量数据集。设置整体图表布局为2x2的子图,总图表大小为(15, 12)。在每个子图中绘制不同物理测量特征(culmen_length_mm、culmen_depth_mm、flipper_length_mm、body_mass_g)的箱线图,通过不同性别进行分组。设置每个子图的标题、横轴标签、纵轴标签,以及总图表的标题。使用 plt.tight_layout(rect=[0, 0.03, 1, 0.95]) 调整布局,避免子图重叠。
该可视化图表展示了不同性别企鹅在不同物理测量特征上的分布差异,通过箱线图形象地呈现了性别间的数据分布范围、中位数和离群值等信息。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 加载数据
penguins_size_df = pd.read_csv('penguins_size.csv')

# 设置整体图表布局 - 性别差异
fig, axes = plt.subplots(2, 2, figsize=(15, 12))
fig.suptitle('Gender Differences in Penguin Physical Measurements', fontsize=16)

# 喙长的箱线图 - 性别
sns.boxplot(ax=axes[0, 0], data=penguins_size_df, x='sex', y='culmen_length_mm')
axes[0, 0].set_title('Culmen Length by Gender')
axes[0, 0].set_xlabel('Gender')
axes[0, 0].set_ylabel('Culmen Length (mm)')

# 喙深的箱线图 - 性别
sns.boxplot(ax=axes[0, 1], data=penguins_size_df, x='sex', y='culmen_depth_mm')
axes[0, 1].set_title('Culmen Depth by Gender')
axes[0, 1].set_xlabel('Gender')
axes[0, 1].set_ylabel('Culmen Depth (mm)')

# 鳍状肢长度的箱线图 - 性别
sns.boxplot(ax=axes[1, 0], data=penguins_size_df, x='sex', y='flipper_length_mm')
axes[1, 0].set_title('Flipper Length by Gender')
axes[1, 0].set_xlabel('Gender')
axes[1, 0].set_ylabel('Flipper Length (mm)')

# 体重的箱线图 - 性别
sns.boxplot(ax=axes[1, 1], data=penguins_size_df, x='sex', y='body_mass_g')
axes[1, 1].set_title('Body Mass by Gender')
axes[1, 1].set_xlabel('Gender')
axes[1, 1].set_ylabel('Body Mass (g)')

plt.tight_layout(rect=[0, 0.03, 1, 0.95])
plt.show()

在这里插入图片描述

7、岛屿影响分析

设置整体图表布局为2x2的子图,总图表大小为(15, 12)。在每个子图中循环绘制不同物理测量特征(culmen_length_mm、culmen_depth_mm、flipper_length_mm、body_mass_g)的箱线图,通过不同岛屿进行分组。设置每个子图的标题、横轴标签、纵轴标签,以及总图表的标题。使用 plt.tight_layout(rect=[0, 0.03, 1, 0.95]) 调整布局,避免子图重叠。
该可视化图表展示了不同岛屿对于企鹅物理测量特征的影响,通过箱线图形象地呈现了数据分布范围、中位数和离群值等信息,使得观察者能够直观了解不同岛屿的差异。

 设置整体图表布局 - 岛屿影响
fig, axes = plt.subplots(2, 2, figsize=(15, 12))
fig.suptitle('Influence of Island on Penguin Physical Measurements', fontsize=16)

# 调整每个身体测量特征的箱线图 - 岛屿
for i, feature in enumerate(['culmen_length_mm', 'culmen_depth_mm', 'flipper_length_mm', 'body_mass_g']):
    ax = axes[i//2, i%2]
    sns.boxplot(ax=ax, data=penguins_size_df, x='island', y=feature)
    ax.set_title(feature.replace('_', ' ').title() + ' by Island')
    ax.set_xlabel('Island')
    ax.set_ylabel(feature.replace('_', ' ').title())

plt.tight_layout(rect=[0, 0.03, 1, 0.95])
plt.show()

在这里插入图片描述

8、喙长与鳍状肢长度(按岛屿区分)

加载企鹅物理测量数据集。利用 Seaborn 绘制散点图,横轴表示喙长(culmen_length_mm),纵轴表示鳍状肢长度(flipper_length_mm),并根据岛屿进行颜色区分。设置图表的标题、横轴标签、纵轴标签,并添加图例说明不同岛屿的颜色。使用 plt.show() 显示图表。
该可视化图表通过散点图清晰展示了喙长与鳍状肢长度之间的关系,并通过颜色区分不同岛屿的数据点,有助于观察者直观地识别岛屿间的差异。

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 加载数据
# penguins_size_df = pd.read_csv('penguins_size.csv')

# 绘制喙长与鳍状肢长度的散点图,并按岛屿区分颜色
plt.figure(figsize=(10, 6))
sns.scatterplot(data=penguins_size_df, x='culmen_length_mm', y='flipper_length_mm', hue='island')
plt.title('Culmen Length vs. Flipper Length by Island')
plt.xlabel('Culmen Length (mm)')
plt.ylabel('Flipper Length (mm)')
plt.legend(title='Island')
plt.show()

在这里插入图片描述

9、预测模型

9.1决策树

重新加载企鹅物理测量数据集。
数据准备:选择特征和目标变量。选择的特征包括 ‘culmen_length_mm’, ‘culmen_depth_mm’, ‘flipper_length_mm’, ‘body_mass_g’,目标变量为 ‘species’。数据处理:删除包含缺失值的行,并获取特征(X)和目标变量(y)。
数据分割:划分数据集为训练集和测试集,其中测试集占总数据的30%。使用决策树模型(DecisionTreeClassifier)进行训练,并使用训练好的模型进行测试集的预测。
模型评估:计算模型的准确度(accuracy_score)和分类报告(classification_report),并输出结果。
该代码展示了如何使用决策树模型对企鹅物理测量数据进行分类,并评估模型的性能。

from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score, classification_report
import pandas as pd

# 重新加载数据
penguins_size_df = pd.read_csv('penguins_size.csv')

# 数据准备:选择特征和目标变量
feature_cols = ['culmen_length_mm', 'culmen_depth_mm', 'flipper_length_mm', 'body_mass_g']

# 修正数据处理:在删除缺失值时同时处理特征和目标变量
penguins_cleaned_df = penguins_size_df.dropna(subset=feature_cols + ['species'])

X = penguins_cleaned_df[feature_cols]
y = penguins_cleaned_df['species']

# 数据分割:划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 使用决策树模型
decision_tree = DecisionTreeClassifier(random_state=42)
decision_tree.fit(X_train, y_train)

# 预测测试集
y_pred_dt = decision_tree.predict(X_test)

# 模型评估
accuracy_dt = accuracy_score(y_test, y_pred_dt)
report_dt = classification_report(y_test, y_pred_dt)

print("Accuracy:", accuracy_dt)
print("Classification Report:\n", report_dt)

在这里插入图片描述

  • Adelie 类别的预测准确度为 100%,Chinstrap 类别的召回率为 100%,Gentoo 类别的召回率为 100%。
  • 加权平均准确度(weighted avg accuracy)为约 95%。

这说明决策树模型在这个数据集上表现良好,能够对企鹅的种类进行较为准确的分类。

9.2随机森林

重新加载企鹅物理测量数据集。

数据准备:选择特征和目标变量。选择的特征包括 ‘culmen_length_mm’, ‘culmen_depth_mm’, ‘flipper_length_mm’, ‘body_mass_g’,目标变量为 ‘species’。

数据处理:删除包含缺失值的行,并获取特征(X)和目标变量(y)。

数据分割:划分数据集为训练集和测试集,其中测试集占总数据的30%。

使用随机森林模型(RandomForestClassifier)进行训练,并使用训练好的模型进行测试集的预测。

模型评估:计算模型的准确度(accuracy_score)和分类报告(classification_report),并输出结果。

from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score, classification_report
import pandas as pd

# 重新加载数据
# penguins_size_df = pd.read_csv('penguins_size.csv')

# 数据准备:选择特征和目标变量
feature_cols = ['culmen_length_mm', 'culmen_depth_mm', 'flipper_length_mm', 'body_mass_g']

# 修正数据处理:在删除缺失值时同时处理特征和目标变量
penguins_cleaned_df = penguins_size_df.dropna(subset=feature_cols + ['species'])

X = penguins_cleaned_df[feature_cols]
y = penguins_cleaned_df['species']

# 数据分割:划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 使用随机森林模型
random_forest = RandomForestClassifier(random_state=42)
random_forest.fit(X_train, y_train)

# 预测测试集
y_pred_rf = random_forest.predict(X_test)

# 模型评估
accuracy_rf = accuracy_score(y_test, y_pred_rf)
report_rf = classification_report(y_test, y_pred_rf)

print("Accuracy:", accuracy_rf)
print("Classification Report:\n", report_rf)

在这里插入图片描述

  • Adelie 类别的预测准确度为 100%,Chinstrap 类别的召回率为 100%,Gentoo 类别的准确度、召回率和 F1-score 都为 100%。
  • 加权平均准确度(weighted avg accuracy)为约 96%。

这说明随机森林模型在这个数据集上表现更好,相比于决策树模型,它对于企鹅的种类进行更为准确的分类。

9.3层次聚类分析

重新加载企鹅物理测量数据集。

选择用于聚类的特征:‘culmen_length_mm’, ‘culmen_depth_mm’, ‘flipper_length_mm’, ‘body_mass_g’。

在删除包含缺失值的行后,获取所选特征的数据。

使用 StandardScaler 对数据进行标准化,以确保每个特征具有相同的尺度。

使用层次聚类方法(ward linkage)构建聚类模型。

绘制层次聚类的树状图(Dendrogram)。

import pandas as pd
from sklearn.preprocessing import StandardScaler
from scipy.cluster.hierarchy import dendrogram, linkage
import matplotlib.pyplot as plt

# 重新加载数据并准备聚类分析
penguins_size_df = pd.read_csv('penguins_size.csv')
cluster_features = ['culmen_length_mm', 'culmen_depth_mm', 'flipper_length_mm', 'body_mass_g']
penguins_cleaned_df = penguins_size_df.dropna(subset=cluster_features)

cluster_data = penguins_cleaned_df[cluster_features]

# 标准化数据
scaler = StandardScaler()
cluster_scaled = scaler.fit_transform(cluster_data)

# 使用层次聚类
linked = linkage(cluster_scaled, method='ward')

# 绘制树状图
plt.figure(figsize=(12, 7))
dendrogram(linked, orientation='top', distance_sort='descending', show_leaf_counts=True)
plt.title('Hierarchical Clustering Dendrogram')
plt.xlabel('Sample Index')
plt.ylabel('Distance')
plt.show()

在这里插入图片描述

通过对企鹅数据集进行 K-means 聚类和层次聚类的分析,我们可以得出以下结论:
K-means 聚类
K-means 聚类结果将数据有效地分为了三个群组,这可能反映了企鹅种类的不同或其物理特征的显著差异。
聚类的可视化展示了企鹅在二维降维空间中的分布,其中每个群组代表了一种特定的特征组合。
层次聚类
层次聚类的树状图提供了一个关于数据分层结构的视觉表示,其中每个分支代表了数据中的一个群组。
树状图的高度(即距离)展示了不同群组之间的相似度或差异性。较短的连接表示群组间相似性高,而较长的连接表示差异性更大。


总结

这些聚类结果可能与企鹅的物理特征(如喙长、喙深、鳍状肢长度和体重)和/或其地理分布(如所在岛屿)有关。
聚类分析揭示了数据中的自然群组,这可能对进一步的生物学研究和物种分类研究有用。
这些发现可以帮助生物学家和生态学家更好地理解不同企鹅种类或种群的特征。

📢文章下方有交流学习区!一起学习进步!💪💪💪
📢首发CSDN博客,创作不易,如果觉得文章不错,可以点赞👍收藏📁评论📒
📢你的支持和鼓励是我创作的动力❗❗❗

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1352096.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c语言-整型在内存的存储

文章目录 前言一、整型数值在内存中的存储1.1 整型数值的表示形式1.2 二进制的表示形式1.3 整数在内存中存储 二、大端字节序存储和小端字节序存储2.1 大端字节序存储2.2 小端字节序存储2.3 练习 总结 前言 本篇文章叙述c语言中整型数据在内存中的存储方式。 一、整型数值在内…

设计模式:简单工厂模式、工厂方法模式、抽象工厂模式

简单工厂模式、工厂方法模式、抽象工厂模式 1. 为什么需要工厂模式?2. 简单工厂模式2.1. 定义2.2. 代码实现2.3. 优点2.4. 缺点2.5. 适用场景 3. 工厂方法模式3.1. 有了简单工厂模式为什么还需要有工厂方法模式?3.2. 定义3.3. 代码实现3.4. 主要优点3.5.…

在较高时间周期 这些现货黄金投资法值得一用

以日线图和周线图为代表的较高时间周期,一直是投资者很少利用的。之所以这么说,不是说投资者不会在日线图上分析,而是很少利用日线图交易。一来持仓过夜,会有相关的费用产生。二来很多人做现货黄金以短线为主。其实这种较高的时间…

Windows中磁盘未知没有初始化怎么办?

当我们尝试在Windows11/10/8/7上使用外部硬盘驱动器时,在小概率情况下可能会遇到磁盘未知没有初始化情况,此时如果您进入磁盘管理工具中查看,将会发现您的外部硬盘驱动器显示为未知、未初始化、没有磁盘空间,或者在某些情况下它还…

阿里云服务器8080端口安全组开通图文教程

阿里云服务器8080端口开放在安全组中放行,Tomcat默认使用8080端口,8080端口也用于www代理服务,阿腾云atengyun.com以8080端口为例来详细说下阿里云服务器8080端口开启教程教程: 阿里云服务器8080端口开启教程 阿里云服务器8080端…

Mac 安装 Adobe AE/PS 软件报错 “Failed with error code 146“

文章目录 1. 安装 AE 软件报错2. 网上的方法2.1 删除 caps 文件夹2.2 删除 Adobe Sync 文件夹 3. 我的解决方法 1. 安装 AE 软件报错 我在尝试安装 Adobe AE 软件的时候,报错 “Failed with error code 146” 2. 网上的方法 2.1 删除 caps 文件夹 在 finder 的…

众和策略股市行情分析:股票分红是按持股比例来分的吗?

股票分红立足于同股同利的准则,按股东的持股比例来进行股利的派发分红。持股多的股东按比例所得的分红就多,持股少的股东按比例所得的分红就少。 另外,分红详细是指的股票发行公司分配股利的行为。股利包含股息和盈利,股息是指的…

【Web】CTFSHOW元旦水友赛部分wp

目录 ①easy_include ②easy_web ③easy_login web一共5题,我出了3题,巧的是好像师傅们也只出了3题,跨年拿旗还是很快乐的,下面直接贴出自己的wp. ①easy_include pearcmd不解释 这里主要是 ,file://协议支持以fi…

Java中的序列化方法探索

.为什么要序列化 对象不序列化,能直接存储吗? 在 Java 中,序列化是将对象的状态信息转换为可以存储或传输的形式(例如,转换为字节流)的过程。在对象数据需要在网络上传输或需要在磁盘上持久化存储时&#…

Spring Boot学习随笔- 集成MyBatis-Plus(二)条件查询QueryWrapper、聚合函数的使用、Lambda条件查询

学习视频:【编程不良人】Mybatis-Plus整合SpringBoot实战教程,提高的你开发效率,后端人员必备! 查询方法详解 普通查询 // 根据主键id去查询单个结果的。 Test public void selectById() {User user userMapper.selectById(1739970502337392641L);System.out.print…

opencv期末练习题(3)附带解析

创建黑色画板,并支持两种画图功能 import mathimport cv2 import numpy as np """ 1. 创建一个黑色画板 2. 输入q退出 3. 输入m切换画图模式两种模式,画矩形和画圆形。用户按住鼠标左键到一个位置然后释放就可以画出对应的图像 "&qu…

Eureka学习思维导图

一、Eureka Server原理解析 参考:https://www.jianshu.com/p/eb690e6ab11d 二、Eureka Client源码解析 参考:https://www.jianshu.com/p/6e8850387da6

Threejs项目实战之四:实现地图雷达效果

目录 最终效果代码实现创建项目DigitalMapView.vue的核心代码 最终效果 最近事情比较多,今晚难得有空,就抽空完成了一个使用Threejs实现地图雷达扫描效果的程序,下面说下代码实现的原理及核心代码,老规矩,先看下效果图…

专业服务新篇章:ToB行业运营达人的能力与策略

又逢年底,这两天冷空气南袭,深圳的天气也转为湿冷,又到了年终总结复盘的时候了,其实这样的天气挺适合做深度的思考,清冷的空气,可以让人保持清醒。 月初市场同事希望我写点东西,题目内容自拟&a…

7-验证码识别

文章目录 验证码识别1、验证码的用途和分类验证码的作用验证身份验证行为 验证码的类型静态验证码:图片验证码问答式验证码问答式验证码行为式验证码:点击行为式验证码:拖动间接式验证码:短信、邮件、语音电话无感验证码 2、验证码…

2023年12月青少年软件编程Python等级考试(三级)真题试卷

2023年12月青少年软件编程Python等级考试(三级)真题试卷 题目总数:38 总分数:100 选择题 第 1 题 单选题 一个非零的二进制正整数,在其末尾添加两个“0”,则该新数将是原数的?&#x…

虹科方案丨从困境到突破:TigoLeap方案引领数据采集与优化变革

来源:虹科工业智能互联 虹科方案丨从困境到突破:TigoLeap方案引领数据采集与优化变革 原文链接:https://mp.weixin.qq.com/s/H3pd5G8coBvyTwASNS_CFA 欢迎关注虹科,为您提供最新资讯! 导读 在数字化工厂和智能制造时…

mcu与上位机通讯数据传输测速

问题 如何测量mcu与上位机通讯数据传输速度?(串口、USB) 解决 可以借助Bus Hound 将显示时间戳勾上。 发送一段固定长度的数据,然后除起始和结束的时间差 最后计算即可。

xadmin-plus

python之Xadmin-plus是什么? xadmin-plus: xadmin的django3.2版本支持。 Xadmin是一个非常优秀的Django Admin插件,可惜的是已经停止更新。Xadmin-plus对其进行了升级兼容。支持python3.10、Django3.2。 特性 Django Admin直接替换基于Twitter Boots…

安装Keras用于影像分割

conda create -n tfkears2024 python3.9.18 activate tfkeras2024 pip install tensorflow-gpu2.9.0 pip install keras pip install scipy pip install ipykernel ipython python -m ipykernel install --name tfkears2024