环境建立
我们做项目第一步就是单独创建一个python环境,Python新的隔离环境
python -m venv ml
是在创建一个名为 ml 的虚拟环境,这样系统会自动创建一个文件夹ml,里面包含了Python的基本环境。
.\Scripts\activate
是在激活这个虚拟环境,然后再执行pip命令安装其他库。
python -m venv ml
的意思是运行venv
模块,并把ml
作为参数传给venv
模块。venv
是 Python 的一个内置模块,用于创建虚拟环境。
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
Numpy是Python的一个很重要的第三方库,很多其他科学计算的第三方库都是以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时,可以使用?+方法,查看各个参数