阿里云上传的网站 服务器路径,精品网络小说推荐,做推广的公司一般都叫什么,佛山做网站yunzhanfs目录
一、使用回归分析方法分析某病毒是否与温度呈线性关系
1.1 代码实现
1.2 线性回归结果
1.3 相关系数验证
二、使用判别分析方法预测某病毒在一定的温度下是否可以存活#xff0c;分别使用三种判别方法#xff0c;包括Fish判别、贝叶斯判别、LDA
2.1 数据集展示分别使用三种判别方法包括Fish判别、贝叶斯判别、LDA
2.1 数据集展示实验二2-2.csv
2.2 代码实现
2.3 判别结果
三、使用聚类分析方法分析病毒与温度、湿度的关系
3.1 代码实现
3.2 聚类分析结果
未完待续----- 一、使用回归分析方法分析某病毒是否与温度呈线性关系
数据集实验三2-1.xls T COUNT 5 1000 10 950 12 943 14 923 20 910 21 900 25 889 27 879 30 870 32 832 33 827 35 801 38 783 40 620 采用线性回归分析方法
1.1 代码实现 import pandas as pd
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt
# 中文字体调整
plt.rcParams[font.family] [Arial Unicode Ms]# 读取 Excel 文件并创建数据框
file_path 实验三3-1.xls
data pd.read_excel(file_path)# 定义自变量和因变量
X data[[T]]
y data[COUNT]# 创建并拟合线性回归模型
model LinearRegression()
model.fit(X, y)# 获取回归系数和截距
slope model.coef_[0]
intercept model.intercept_# 打印回归方程
print(f回归方程: 病毒存活数 {intercept:.2f} {slope:.2f} * 温度)# 绘制散点图和回归线
plt.scatter(X, y, colorblue, label实际数据)
plt.plot(X, model.predict(X), colorred, linewidth2, label拟合回归线)
# 主题
plt.title(病毒存活数量与温度的线性关系)
plt.xlabel(温度℃) # x 轴标签添加属性和单位
plt.ylabel(病毒存活数量个) # y 轴标签添加属性和单位
plt.legend()
plt.show() 1.2 线性回归结果
回归方程如下
将线性回归结果绘制成如下图形 可以看出除了40摄氏度下的病毒存活数量偏低其他点都很好的符合回归方程 病毒存活数 1048.50 -7.46 * 温度。 1.3 相关系数验证
1代码如下
import pandas as pd# 读取 Excel 文件并创建数据框
file_path 实验三3-1.xls
data pd.read_excel(file_path)# 计算 Pearson 相关系数
pearson_corr data[T].corr(data[COUNT], methodpearson)# 计算 Spearman 相关系数
spearman_corr data[T].corr(data[COUNT], methodspearman)print(fPearson 相关系数: {pearson_corr:.2f})
print(fSpearman 相关系数: {spearman_corr:.2f}) 2根据数据集计算出的相关系数结果如下 根据计算结果可以得出结论温度与病毒数量之间呈现出较强的负相关关系。
Pearson相关系数为-0.89表明温度与病毒数量之间存在着高度负相关关系。即随着温度的升高病毒数量呈现下降的趋势反之温度降低时病毒数量则可能增加。Spearman相关系数为-1.00说明温度与病毒数量之间存在着完全的负相关关系即它们的关系是单调递减的温度每上升一个单位病毒数量就会减少一个单位。
综合以上分析可以得出结论温度与病毒数量之间呈现出明显的负相关关系即温度的变化对病毒数量有着显著的影响通常情况下温度升高会导致病毒数量减少而温度降低则可能导致病毒数量增加。 二、使用判别分析方法预测某病毒在一定的温度下是否可以存活分别使用三种判别方法包括Fish判别、贝叶斯判别、LDA
2.1 数据集展示实验二2-2.csv temperature humidity class 5.127 74.978 1 -9.274 96.247 1 -21.371 79.613 1 -37.5 85.109 1 -51.325 69.282 1 -52.477 80.49 0 -39.804 71.718 1 -30.588 60.388 1 1.671 69.788 1 13.191 78.306 1 38.537 60.747 1 52.938 65.94 1 53.882 73.829 0 23.675 60.753 1
2.2 代码实现
import pandas as pdfrom sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.naive_bayes import GaussianNB
from sklearn.discriminant_analysis import QuadraticDiscriminantAnalysis
import numpy as np# 生成包含极端数据的随机数据
np.random.seed(42)
random_temperatures np.array([-70.0, 45.0, 23.0, 9.0, -50.0, -50.0, 50.0, 36.0, 10.0, 20.0])
random_humidity np.array([10.0, 98.0, 93.0, 68.0, 5.0, 100.0, 95.0, 80.0, 77.0, 70.0])new_data pd.DataFrame({temperature: random_temperatures, humidity: random_humidity})# 读取 Excel 文件并创建数据框
file_path 实验三3-2.csv
data pd.read_excel(file_path)
df pd.DataFrame(data)X df[[temperature, humidity]]
y df[class]# Fisher判别
lda LinearDiscriminantAnalysis()
lda.fit(X, y)# 贝叶斯判别
nb GaussianNB()
nb.fit(X, y)# LDA
qda QuadraticDiscriminantAnalysis()
qda.fit(X, y)# 新数据预测
fisher_pred lda.predict(new_data)
bayes_pred nb.predict(new_data)
lda_pred qda.predict(new_data)# 输出结果
result_map {0: 不可以存活, 1: 可以存活}
fisher_pred_label [result_map[pred] for pred in fisher_pred]
bayes_pred_label [result_map[pred] for pred in bayes_pred]
lda_pred_label [result_map[pred] for pred in lda_pred]output_data pd.DataFrame({temperature: random_temperatures,humidity: random_humidity,Fisher判别预测结果: fisher_pred_label,贝叶斯判别预测结果: bayes_pred_label,LDA预测结果: lda_pred_label
})print(随机生成的10组数据及其三种判别结果:)
print(output_data)
2.3 判别结果 三、使用聚类分析方法分析病毒与温度、湿度的关系
数据集与上题相同此处不作呈现
另外采用三种聚类分析方法包括要求的k-均值聚类、层次聚类还使用了高斯混合模型GMM聚类。
3.1 代码实现
import pandas as pd
import numpy as np
from sklearn.cluster import KMeans, AgglomerativeClustering
from sklearn.mixture import GaussianMixture
import matplotlib.pyplot as plt
plt.rcParams[font.family] [Arial Unicode Ms]# 读取 Excel 文件并创建数据框
file_path 实验三3-2.csv
data pd.read_excel(file_path)
df pd.DataFrame(data)# k-均值聚类
kmeans KMeans(n_clusters2)
df[kmeans_cluster] kmeans.fit_predict(df[[temperature, humidity]])# 层次聚类
agg AgglomerativeClustering(n_clusters2)
df[agg_cluster] agg.fit_predict(df[[temperature, humidity]])# 高斯混合模型聚类
gmm GaussianMixture(n_components3)
df[gmm_cluster] gmm.fit_predict(df[[temperature, humidity]])# 定义红绿蓝颜色列表熟悉的颜色可视化效果会更好
colors_rgb [(1, 0, 0), (0, 1, 0), (0, 0, 1)]# 可视化结果
plt.figure(figsize(18, 6))
plt.subplot(131)
plt.scatter(df[temperature], df[humidity], c[colors_rgb[i] for i in df[kmeans_cluster]])
plt.title(K-Means聚类分析结果)
plt.xlabel(温度)
plt.ylabel(湿度)plt.subplot(132)
plt.scatter(df[temperature], df[humidity], c[colors_rgb[i] for i in df[agg_cluster]])
plt.title(层次聚类分析结果)
plt.xlabel(温度)
plt.ylabel(湿度)plt.subplot(133)
plt.scatter(df[temperature], df[humidity], c[colors_rgb[i] for i in df[gmm_cluster]])
plt.title(高斯混合模型聚类分析结果)
plt.xlabel(温度)
plt.ylabel(湿度)plt.show()
3.2 聚类分析结果
首先是对每种聚类分析方法中蔟数量的设置在k-均值聚类方法和层次聚类方法中蔟设置为2种高斯混合模型聚类种蔟设置为3种。
通过观察绘出的图像可以观察到在高温高湿的条件下形成一类簇而在低温低湿的条件下形成另一类簇。在低温低湿的条件更为密集因此低温低湿更适合病毒的生存。 未完待续----- 其实我本以为最终上岸一定是很激动的但却出奇的平静但却又那么符合常理。出奇的是自己当初焦虑到做梦都是相关场景理应非常激动而不出奇的是与之前打比赛时的经历不谋而合付出得越多反而越平静。此时的平静自许为成熟的平静是对于一切结果的坦然以及聚焦于当下道路的注意力表现出来的就是当下没有多余的心情让我消费在结果上面因为我认为人在与环境交互的过程中总是需要学会接受一切正面和负面的反馈并且使之不对自己当下的步伐产生负面影响而这我认为是最大化我们目标的重要学习策略之一。 -------------ypp