机器学习项目实践-基础知识部分

环境建立

我们做项目第一步就是单独创建一个python环境,Python新的隔离环境

创建:python -m venv ml

使用:.\Scripts\activate

python -m venv ml 是在创建一个名为 ml 的虚拟环境,这样系统会自动创建一个文件夹ml,里面包含了Python的基本环境。

 .\Scripts\activate 是在激活这个虚拟环境,然后再执行pip命令安装其他库。

python -m venv ml 的意思是运行 venv 模块,并把 ml 作为参数传给 venv 模块。venv 是 Python 的一个内置模块,用于创建虚拟环境。 

1) 安装numpy

pip install numpy -i Simple Index

pip install pandas -i Simple Index

pip install matplotlib -i Simple Index

pip install jupyter notebook -i Simple Index

启动jupyter notebook, 进入到你想查看的目录,打开之前需要进入.\Scripts\activate。

Numpy 

NumpyPython的一个很重要的第三方库,很多其他科学计算的第三方库都是以Numpy为基础建立的。

Numpy的一个重要特性是它的数组计算。

import numpy
import numpy as np
from numpy import *
from numpy import array, sin

%pylab 是一个方便的模块,用于在单个名称空间中批量导入 matplotlib.pyplot(用于绘图)和 NumPy(用于数学和处理数组)

%pylab

数组上的数学操作 

我们不能直接将列表相加,列表相加就相当于append操作。

a = [1, 2, 3, 4]
a + [1, 1, 1, 1]

这样会生成[1, 2, 3, 4, 1, 1, 1, 1]

要先都转换为array数组:

b = np.array([2, 3, 4, 5])
a + b

提取数组中的元素 

  • 提取第一个元素:a[0]
  • 提取前两个元素:a[:2]

  • 最后两个元素:a[-2:]

修改数组形状 

  • 修改 array 的形状:a.shape = 2,2
  • 或a.reshape(2,2)
aaa = np.array([[[1,2,4],[3,4,5]],[[5,6,7],[7,8,10]]])

这个数组的维度有三个,0、1、2。

aaa.sum(axis= 0)结果:
[[6,8,11],
[10,12,15]]

这是因为axis等于零时,相当于按照零维度求和,相当于两个两行三列的数组求和。

axis等于1时,相当于按照第二个维度求和,就是按每个元素的行求和, 结果:

[[4,6,9],
[12,14,17]]

画图 

a = linspace(0, 2*pi, 21)
%precision 3
b = sin(a)%matplotlib inline
plot(a, b)
  • %matplotlib inline 是 Jupyter Notebook 的魔法命令,用于在 Notebook 中内嵌显示绘制的图形。

我们在画图的时候经常遇到中文显示不出来,这也是matplotlib 一直以来的诟病。

我们可以在画图前调库的时候加上两行代码:

from matplotlib import rcParams
rcParams['font.family'] = 'SimHei'

这样问题就解决了。

# plot方法就是在直角坐标系中绘制折线图的方法,绘制折线图的逻辑就是在
# 直角坐标系中绘制点,然后将点连起来
fig = plt.figure(figsize=(10,6))
plt.plot(x, y, marker='o',linestyle='--',c='#CD7F32')
plt.plot(x, y2)
plt.xticks(np.arange(0,11))
# plt.yticks(np.arange(-1,2,0.2))
plt.xlim(0,7)
plt.ylim(1,2)
plt.title("sin & cos函数")
plt.xlabel("x轴")
plt.ylabel("y轴")
plt.show()

当我们不知道某个方法的API时,可以使用?+方法,查看各个参数

 

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

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

相关文章

面试官:打开了一个新窗口,怎么知道这个窗口已经被打开过?

前言 我们现在来想这么一个场景,在掘金的文章管理页打开了一篇文章草稿,然后点击编辑,这个时候打开新标签页 A ,再点击一次编辑,打开了标签页 B 。 此时如果你在 A 编辑, B 是感知不到 A 的内容变动的,因为没做协同编辑。此时再到 B 编辑,那么就可能导致A标签页的内容…

如何利用Java代码获取并处理下一年节假日数据

前言 在企业应用开发中,获取并处理节假日数据是一个常见需求,特别是在需要安排任务调度、假期通知等功能的场景中。本文将以Java语言为例,介绍如何通过网络API获取特定年份的节假日信息,并将其存储到数据库中。我们将使用Java的日期处理库(假设为DateUtil,类似于真实世界…

AGV无人叉车 | 我们为什么要投资“智慧生产”

AGV 作为一种智能工业车辆机器人,无人叉车充分融合叉车技术和AGV技术,近年来在仓储物流领域的应用逐步扩大。在传统叉车厂商、传统AGV厂商、物流集成商及仓储机器人企业等各方力量推动下,无人叉车市场在竞合中快速发展,并促使无人…

优雅的实现接口统一调用!

有些时候我们在进行接口调用的时候,比如说一个 push 推送接口,有可能会涉及到不同渠道的推送。 比如做结算后端服务的,会与金蝶财务系统进行交互,那么我结算后端会涉及到多个结算单类型,如果每一个种类型的结算单都去…

web3以太坊前端开发,如何调用链上的接口

其实做web3开发,最大的障碍莫过于这帮人说的一些生僻的词。我们之前就是调个接口,人家说你发一笔交易,我们之前传入的一个参数,一个配置变量,人家说你得加一个合约地址。反正就是听娃娃哭的多了,你就差不多…

如果insightface/instantID安装失败怎么办(关于InsightFaceLoader_Zho节点的报错)

可能性有很多,但是今天帮朋友解决问题的时候又收集了一种新的思路。 首先,可以先按照这篇文章里边提到的方法去安装: 【全网最详细】ComfyUI下,Insightface安装指南-聚梦小课堂_insightface如何安装-CSDN博客 其次,…

Java面试题:解释volatile关键字的作用,以及它如何保证内存的可见性

在编程中,特别是在并发编程和多线程环境中,volatile 关键字是一个用于声明变量的特殊关键字,它主要有以下几个作用: 可见性:volatile 保证了在一个线程中对一个变量的修改对于其他线程是可见的。也就是说,当…

消息队列使用常见问题

一、消息丢失的时机? 生产端消息丢失 问题:因为网络异常导致消息发送失败,此时可能会产生消息丢失的情况,重试后可能产生消息重复生产的情况。 解决:超时重试,并在消费端保证幂等性。 消息队列中消息丢失 …

使用IIS部署Vue项目

前提 使用IIS部署Vue项目,后端必须跨域,不要在Vue中用proxy跨域,那个只在dev环境中有用! IIS安装,不用全部打勾,有些他默认就是方块 ■ 选择性安装的,就维持原样就可以。 添加网站配置 右键…

Springboot项目学习之各组件的用法和逻辑结构

1.Controller层(Controller): 也称为前端控制器或请求处理器,它是项目与用户交互的入口。Controller接收HTTP请求,解析请求参数,调用Service层处理业务逻辑,并返回响应给客户端。 Controller通…

告别杂乱桌面,开启纯净视界!DeskCover Pro,Mac用户的桌面神器!

DeskCover Pro for Mac是一款专为macOS设计的桌面图标隐藏软件,其主要功能和特点包括: 桌面图标隐藏:通过单击鼠标或按全局热键,可以快速隐藏桌面上的所有图标,为您提供一个干净整洁的工作环境。窗口聚焦:…

第十四届蓝桥杯大赛软件赛省赛(Python大学A组)

2023年蓝桥杯 省赛真题Python大学A组 试题A:特殊日期 试题B:分糖果 试题C:三国游戏 试题D:平均 试题E:翻转 试题F:子矩阵 试题G:阶乘的和 …

关于2024年东北教育装备展示会(沈阳)参展通知

2024年东北教育装备展示会 邀请函 数字赋能新时代 共创教育新未来 时间:2024年6月28-30日 地点:沈阳国际展览中心(沈阳市苏家屯-会展路9号) 展览面积:30000平方米 参展商数:260家 预计观众&#xff1…

第8篇:创建Nios II工程之读取Switch的值<一>

Q:本期我们再添加一个PIO组件设为输入,创建Nios II工程读取输入值显示在LED上。 A:在前2期创建的控制LED工程的Platform Designer系统基础上再添加一个PIO核,参数设置为18位和单向输入模式,表示DE2-115开发板上的18个…

爬虫Python库BeautifulSoup

一、介绍 BeautifulSoup 是一个用于解析 HTML 和 XML 文档的 Python 库。它可以帮助开发人员快速而方便地从网页中提取所需的数据。 BeautifulSoup 提供了一些方法来遍历树状结构的文档,以及搜索和修改文档。 二、应用步骤 使用 BeautifulSoup,可以通过以下步骤进行爬取网…

做题速度太慢了,面不上

没办法,之前练了一个月的sql。两个月不写,现在差不多忘干净了。工作空窗期,或者休息期不能太久,不然学再多的内容都可能会忘完的。 sql题,腾讯四道sql题,限时45分钟完成。我只做了一道,还没做完…

Linux中的md5应用

md5是一种加密技术,用于校验码比对操作,通过对比md5码的区别可以唯一确定文件身份。 Md5的常用场景包括库的新版本发布,和版本提交,文件的更新等,如果更新了库则通过md5校验码作为身份,可以区别更新前后的不…

uni-app选择图片进行覆盖然后分享或打印

需求&#xff1a;APP上传手机原有的图片&#xff0c;进行覆盖指定的部分&#xff0c;覆盖完成后&#xff0c;唤起原生系统的分享面板&#xff0c;面板上有分享给其他人&#xff0c;还有打印选项 准备一个canvas和button标签 <canvas canvas-id"myCanvas" :style…

vivado刷题笔记46

题目&#xff1a; Design a 1-12 counter with the following inputs and outputs: Reset Synchronous active-high reset that forces the counter to 1 Enable Set high for the counter to run Clk Positive edge-triggered clock input Q[3:0] The output of the counter c…

从零开始的软件测试学习之旅(六)测试网络基础知识

测试网络基础知识 HTTP和HTMLURLDNS客户端和服务器请求方法和状态码面试高频Fiddler抓包工具教学弱网 HTTP和HTML 概念 html: HyperText Markup Language 超文本标记语言 http: HyperText Transfer Protocol 超文本传输协议 超文本: 图片, 音频, 视频 关系:http 可以对 html 的…