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

机器学习实践(一)

这里写自定义目录标题

  • 数据导入
  • 数据描述
  • 数据的可视化
  • 数据预处理
  • 数据特征的选择

数据导入

(1)python标准类库导入
(2)用numpy模块导入
(3)用pandas导入

frompandasimportread_csv filename='pima-indians-diabetes.csv'names=['preg','plas','pres','skin','test','mass','pedi','age','class']data=read_csv(filename,names=names)

数据描述

(1)描述性统计

frompandasimportset_optionset_option('precision',4)print(data.describe())


(2)数据的分组分布

print(data.groupby('class').size())

(3)数据属性的相关性
使用皮尔逊相关系数:1表示正相关,-1表示负相关

set_option('display.width',100)set_option('precision',2)print(data.corr(method='pearson'))

数据的可视化

(1)直方图显示

data.hist()plt.show()

(2)密度图显示

data.plot(kind='density',subplots=True,layout=(3,3),sharex=False)plt.show()

(3)散点图显示

scatter_matrix(data)plt.show()

数据预处理

(1)调整数据的尺度

fromnumpyimportset_printoptionsfromsklearn.preprocessingimportMinMaxScaler transformer=MinMaxScaler(feature_range=(0,1))newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)

将所有数据的值调整在(0,1)之间。

(2)正态化数据

transformer=StandardScaler().fix(X)newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)

(3)标准化数据

transformer=Normalizer().fix(X)newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)

(4)二值化数据

transformer=Binarizer(threshold=0.0).fix(X)newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)

数据特征的选择

(1)单变量特征选定(卡方检验)

test=SelectKBest(score_func=chi2,k=4)fit=test.fit(X,Y)set_printoptions(precision=3)print(fit.scores_)features=fit.transform(X)print(features)


这里的数值越大表示对结果影响最大的因素,可作为特征选择的参考值。

(2)递归特征消除(RFE)
对此方法的理解不够,需要使用时再仔细研究

(3)主要成分分析(PCA)
通常被称作数据降维

pca=PCA(n_components=3)fit=pca.fit(X)print("解释方差:%s",fit.explained_variance_ratio_)print(fit.components_)

下一章就到模型的选择了,设计模型评价等点。

http://www.cnnetsun.cn/news/3714914.html

相关文章:

  • CTF实战复盘:Web渗透、逆向工程与密码学攻防艺术
  • 2026挖洞潜规则:为什么大佬专挑“烂网站”挖高危,你却只会死磕大厂?
  • 计算机毕业设计之基于SpringBoot的电影购票系统
  • Outfit字体v1.0技术架构解析:现代品牌自动化系统的字体解决方案
  • Linux 系统入门:一周高效学习路径与实战指南
  • 5分钟快速备份QQ空间历史说说的终极完整指南:GetQzonehistory免费工具使用教程
  • Zookeeper单机部署单服务过程(非docker方式)
  • cAdvisor容器监控实战:Docker部署、指标查看与公网访问
  • 智慧城市AI算法失效真相:不是模型问题,而是这4类城市动态数据未做时空对齐
  • 3D模型【狮子】
  • 数据结构实验(C语言):堆串
  • 行空板双路电机驱动与I/O扩展板详解:从原理到机器人项目实战
  • 流式语音合成技术:低延迟TTS在实时交互中的应用
  • AI学习效率的“临界点突破法”:第17小时后大脑突触连接激增214%(MITDeepMind联合实验原始数据节选)
  • 别再无脑开高推理!Opus 5高配会擅自重构代码乱加戏
  • 检索增强生成(RAG)技术全景图:2025 年的工具、方法和最佳实践
  • 向量数据库行业格局分析:2025 年谁主沉浮、什么场景选什么产品
  • 线代之光:特征值与特征向量的理论、工程意义与 Python 实战
  • Luogu P3028 [USACO10OCT]汽水机Soda Machine
  • 【安装配置】Git 和 TortoiseGit 安装配置
  • 昆仑大模型企业级AI部署实战指南
  • C++ ~ 类的封装
  • Dan Koe内容创作方法论:如何打造引发深度共鸣的优质内容
  • Visual C++运行库终极修复指南:一站式解决Windows软件兼容性问题
  • 相似三角形
  • 19-物理层-物理层下面的传输介质
  • 论文 AI 工具避坑实录:筛选法则 + 效率质量双达标,杜绝 AI 痕迹、高重复率与学术不端风险
  • FSearch:Linux用户的文件搜索终极解决方案,告别缓慢等待
  • 每次启动,/dev/ada1 的权限都会重置,有什么办法让它权限固定住吗?
  • TTS-Backup终极指南:守护你的桌游模拟器珍贵数据