- 博客(17)
- 收藏
- 关注
原创 实验、K-means聚类实现
其基本思想是将数据集划分为k个簇,并通过不断调整簇中心,使得每个数据点与其所在簇的中心的距离最小化。本实验旨在帮助理解K-means聚类的基本原理,学习如何使用Scikit-learn库实现K-means聚类,并通过实验观察其在不同数据集上的效果。(3)n_init:初始化次数,即算法会尝试n_init次不同的初始簇中心,最终返回最优的结果。缺点:需要预先确定簇数,容易受到噪声和异常值的影响,无法处理非凸形状的簇,且对于初始中心的选择较为敏感。(3)不适用于非凸形状的簇,或者簇的大小、密度差异较大的数据。
2024-12-06 10:27:57
1796
原创 PCA实现
本实验使用的是鸢尾花数据集(Iris dataset),它是一个经典的多分类数据集,包含150个样本,4个特征(花萼长度、花萼宽度、花瓣长度、花瓣宽度),以及3个目标类别(Setosa、Versicolor、Virginica)。从降维后数据的可视化结果可以看出,降维后的二维空间能较好地分隔出不同类别。累计方差解释率图显示,前两个主成分解释了大部分数据的方差,这说明PCA的降维在保留信息的同时简化了数据。降维后的2维数据图:PCA降维后,数据点在二维空间中被更好地分隔,不同类别的样本明显区分。
2024-12-04 16:51:28
473
原创 实验、决策树分类
本实验旨在通过实现一个基础的决策树分类模型,帮助掌握以下技能:理解并应用决策树分类模型:学习如何使用Scikit-learn库的DecisionTreeClassifier来实现分类任务。模型调优:通过测试不同深度的决策树,理解树的深度对模型性能的影响,并找到最佳深度。本实验使用的是鸢尾花数据集(Iris dataset),它是一个经典的多分类数据集,包含150个样本,4个特征(花萼长度、花萼宽度、花瓣长度、花瓣宽度),以及3个目标类别(Setosa、Versicolor、Virginica)。
2024-11-28 16:26:58
821
原创 数据质量分析
使用简单的统计分析,可以得到含有缺失值的属性的个数,以及每个属性的未缺失数、缺失数与缺失率。从总体上来说,缺失值的处理分为删除存在缺失值的记录、对可能值进行插补和不处理3种情况。脏数据一般指不符合要求以及不能直接进行分析的数据,常见有:缺失值、异常值、不一致值、重复数据、含有特殊符号的数据。缺失值是指数据集中某些字段没有值,通常用NaN(Not a Number)表示。fillna() # 填充缺失值(例如,用均值填充)异常值指样本中的个别值,其数值明显偏离其他的观测值。异常值(离群点)分析。
2024-11-24 07:00:00
238
原创 python主要数据探索函数
plot(logx=True)/plot(logy=True):绘制x或y轴的对数图形。corr:计算数据样本的Spearman(Pearson)相关系数矩阵。基本数据统计(Pandas DataFrames为例)plot(yerr = error):绘制误差条形图。skew/kurt:偏度(三阶矩)/峰度(四阶矩)(1) sum:计算数据样本的总和(按列计算)(2)mean:计算数据样本的算术平均数。(1)plot:线性二维图,折线图。hist:二维条形直方图。boxplot:箱型图。
2024-11-23 07:00:00
168
原创 利用Scikit-learn进行数据预处理的基本流程和方法
本实验旨在通过实际操作,使学生掌握利用Scikit-learn进行数据预处理的基本流程和方法,包括数据清洗、特征缩放、缺失值处理、数据转换等。选择一个包含多种数据类型(如数值型、字符型、日期型等)的公开数据集,如“Titanic乘客数据集”或“UCI机器学习库”中的其他数据集。o Scikit-learn库、Numpy库、Pandas库。(2)删除缺失值过多的列。(4)异常值检测与处理。(1)数据清洗前后对比。(2)特征缩放前后对比。(3)数据转换后的结果。
2024-11-22 09:16:28
591
原创 实验:SVM实现多分类
该数据集包含150条记录,每条记录有4个特征(萼片长度、萼片宽度、花瓣长度、花瓣宽度),属于3个类别之一(Setosa、Versicolor、Virginica),是一个典型的多分类数据集。SVM是一种强大的分类方法,尤其擅长处理高维数据,能够通过选择不同的核函数灵活地应对不同类型的数据。(2)数据预处理的影响:SVM对数据的预处理非常敏感,特征的标准化和归一化对于模型的效果有显著影响。SVM的性能受参数影响很大,尤其是C(惩罚参数)和gamma(核函数参数,尤其是对于RBF核)。
2024-11-21 17:21:09
2959
原创 逻辑回归分类模型
本实验使用的是鸢尾花数据集(Iris dataset),它是一个经典的多分类数据集,包含150个样本,4个特征(花萼长度、花萼宽度、花瓣长度、花瓣宽度),以及3个目标类别(Setosa、Versicolor、Virginica)。为了简化实验并将问题转化为二分类问题,我们将类别2(Virginica)标记为0,而类别0(Setosa)和类别1(Versicolor)标记为1。本实验旨在通过实现一个基础的逻辑回归分类模型,掌握以下技能:了解并应用逻辑回归模型,完成从数据加载、预处理到训练与评估的整个流程。
2024-11-20 17:19:27
532
原创 MongoDB基本操作实验
本实验旨在通过实际操作,掌握MongoDB的基本操作,包括文档的增加、删除、更新,以及使用MongoDB Shell进行交互和查询。一、连接MongoDB Shell。七、使用帮助和Shell命令。二、创建新的数据库和集合。mongo //启动。三、向集合添加新文档。
2024-11-18 07:00:00
398
原创 MongoDB的索引与聚合
运用简单的聚合命令(如$count、$distinct、$group等)对数据进行分析和统计。注意删除索引最好在做完第二步使用explain方法评估索引的效率和查询性能之后再进行!本实验旨在掌握MongoDB的索引操作和聚合工具的使用。使用explain方法评估索引的效率和查询性能。创建、删除索引,了解索引的数据结构和存储方式。
2024-11-17 07:00:00
193
原创 实验:线性回归实现(手动下载加利福尼亚州的房屋数据集)
使用 California Housing 数据集:此数据集包含加利福尼亚州的房屋数据,包括多个特征(如房间数量、人口、平均收入等)以及目标变量 MedHouseVal(房价中位数,单位为千美元)。本实验的目标是通过线性回归模型来预测加利福尼亚州各区域的房价,并对模型的性能进行评估。通过该实验,我们将掌握数据的加载与预处理、模型训练与测试、模型评估以及结果可视化的完整流程。然后根据自己的文件存放位置来修改下面代码中的注释存放地址、解压地址和解压后文件存放地址。十、可视化实际房价与预测房价的对比。
2024-11-16 07:00:00
1135
原创 xshell上实现:MongoDB文档查询
应使用适当的MongoDB命令或工具向所创建的集合中插入至少三个文档,确保每个文档包含不同的字段和数据类型,以展示MongoDB文档的灵活性。本实验旨在了解MongoDB文档数据库的基本操作,包括创建集合、插入文档数据和执行文档查询操作。:需使用MongoDB命令或MongoDB Compass等工具创建一个新的数据集合,命名为实验指定的名称。(2)查找所有已注册(enrolled: true)的学生。(4)查找 GPA 大于 3.5 的学生。(1)查询集合中的所有文档。(3)按年龄升序排序学生。
2024-11-15 07:00:00
834
原创 xshell7上实现MapReduce初级编程实践:对给定的表格进行信息挖掘
这里我还在MapReduce文件夹中,所以用的这个,你也可以直接转到hadoop的bin目录下使用hdfs指令来完成。Hadoop版本:3.4.0(这里的版本根据自己的修改,可能小部分版本的Hadoop不适用于本文实验)这里的root为用户名,可以更改为你使用的用户名,后面的MapReduce则是存放文件的文件夹。创建目录(需要与前面赋予权限的用户名相同,我前面是root,所以这里也是root)输入文件内容如下:(保证之间空格为1,否则可能输出会出错)(前面做过可跳过)(为后面的创建目录做准备)
2024-11-14 07:00:00
559
原创 实验:基于Scikit-learn库实现KNN分类
该数据集包含150条记录,每条记录有4个特征(萼片长度、萼片宽度、花瓣长度、花瓣宽度),属于3个类别之一(Setosa、Versicolor、Virginica)。(2)使用train_test_split函数将数据集分成训练集和测试集(通常比例为80%训练,20%测试)(1)使用KNN算法创建模型,尝试设置不同的K值(例如K=3, 5, 7)。(2)根据图表找到的最佳K值,重新训练模型并评估其性能。(1)绘制出不同K值下模型的准确率,以找到最佳的K值。5. 选择最佳K值,重新训练模型并评估。
2024-11-13 16:56:59
529
原创 MapReduce初级编程实践:编写程序实现对输入文件的排序
要求读取所有文件中的整数,进行升序排序后,输出到一个新的文件中,输出的数据格式为每行两个整数,第一个数字为第二个整数的排序位次,第二个整数为原待排列的整数。Hadoop版本:3.4.0(这里的版本根据自己的修改,可能小部分版本的Hadoop不适用于本文实验)这里的root为用户名,可以更改为你使用的用户名,后面的MapReduce则是存放文件的文件夹。创建目录(需要与前面赋予权限的用户名相同,我前面是root,所以这里也是root)(前面做过可跳过)(为后面的创建目录做准备)(切记要保存后退出!
2024-11-13 07:00:00
442
原创 MapReduce初级编程实践:编程实现文件合并和去重操作
对于两个输入文件,即文件A和文件B,请编写MapReduce程序,对两个文件进行合并,并剔除其中重复的内容,得到一个新的输出文件C。下面是输入文件和输出文件的一个样例供参考。这里我还在MapReduce文件夹中,所以用的这个,你也可以直接转到hadoop的bin目录下使用hdfs指令来完成。Hadoop版本:3.4.0(这里的版本根据自己的修改,可能小部分版本的Hadoop不适用于本文实验)这里的root为用户名,可以更改为你使用的用户名,后面的MapReduce则是存放文件的文件夹。(切记要保存后退出!
2024-11-12 19:50:23
1231
原创 Jupyter的python语言来完成利用Scikit-learn实现多项式朴素贝叶斯(无法正常利用from sklearn.datasets import fetch_20newsgroups)
如果你也遇到了用from sklearn.datasets import fetch_20newsgroups,总是报错HTTP Error 403: Forbidden的问题,可以尝试使用我的方法,希望对你有帮助。这里的data_dir='20news-bydate'换成你的文件地址(本人直接放在目录下,与最下方解压的地方一致即可不用修改)解压后将其解压出来的文件20_newsgroups文件夹重命名为20news-bydate。下载包的教程:(我下载的20news-19997.tar.gz)
2024-11-07 19:04:06
538
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人