mark:
conda info —env 查看当前的环境
conda activate tensorFlow 进入环境
jupyter notebook 进入 jupyter notebook
conda deactivate 退出环境
一些常见的名词的范围是:
人工智能(AI) > 机器学习 > 深度学习
numpy
numpy 是一个 python 的库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
关于数据类型,他可以自定义,比如:
import numpy as np
student = np.dtype([('name','S20'),('age','i1'),('marks','f4')])
student1 = np.array([('yichen',21,100),('writeup',20,98)],dtype=student)
print(student1)
这样会按照 student 这个结构化数据类型应用到 student1 这里
创建一个两行四列的数组,并且用 1 来填充,如果向用 0 的话就是 zeros,默认数据类型是浮点数,可以后面加上 dtype=int 设置为整形
import numpy as np
np.ones(shape=(2, 4), dtype=int)
广播是 numpy 对不同形状的数组进行数值计算的方式,比如加法广播,直接在原来 [[1 1 11] [1 1 1 1]] 的基础上加上 [1 2 3 4]
reshape,在不改变数据的情况下改变形状
#产生一个3位数组,(2,3,4),2个平面,每个平面都是3行4列
a = np.arange(24).reshape(2, 3, 4)
print(a)
可以用 random 来产生随机浮点数
np.random.random(size=(3,4))
一些取值的方法
import numpy as np
a = np.arange(12).reshape(3, 4)
print(a)
print(a[1:3, :])#取第1、2行的所有列
print(a[:, 1])#取每一行的第一列
将类型转换为浮点型
import numpy as np
a = np.arange(12).reshape(3, 4)
print(a)
print(a.astype(float))
转为布尔型,然后就可以用它来取值了
import numpy as np
a = np.arange(9).reshape(3, 3)
print(a)
mask = np.array([[0,1,0], [1,1,1], [0,1,0]], dtype = bool)
print(mask)
zero = np.zeros(shape=(3,3), dtype=int)
print(zero)
zero[mask]=a[mask]
print(zero)
用来求最大值
import numpy as np
a = np.random.random(size=(4,4))
print(a)
max = np.max(a) #找到最大值
print(max)
index = np.argmax(a) #找到最大值所对应的索引号
print(index)
max_row = np.max(a, axis = 1) #求解每一行的最大值
print(max_row)
max_col = np.max(a, axis = 0) #求解每一列的最大值
print(max_col)
matplotlib
Matplotlib 是 Python 的绘图库
import numpy as np
import matplotlib.pyplot as plt
y = np.random.random(5)
print(y)
plt.plot(y)#只有一个的话x轴默认1、2、3、4...
plt.show()
import numpy as np
import matplotlib.pyplot as plt
y1 = np.random.random(10)
y2 = np.random.random(10)
x1 = range(10)
plt.plot(x1, y1)
plt.plot(x1, y2)
plt.show()
后面加上 linewidth = 3
可以加粗
加 'ro-'
可以改颜色以及线条的类型
把图分成好多个而不是在一个中
subplot,三个参数分别是子图的行数、子图的列数、当前子图的 id
1 2
3 4
在后面加上 label='log(2x+1)'
设置显示标签
plt.legend(loc=’upper left’) 设置标签显示的位置
展示网格线与标题
import numpy as np
import matplotlib.pyplot as plt
plt.xticks(np.arange(10))#设置网格线数量
plt.grid(True)#展示网格线
y1 = np.random.random(10)
x1 = range(10)
plt.plot(x1, y1)
plt.title('random')#标题
plt.show()
pandas
使用 pandas 可以读取表格文件
import pandas as pd
col_names = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV']
#read_csv() arg1:要读取的文件路径及名称 arg2:列名称 arg3:列之间的间隔 arg4:添加的列信息
data = pd.read_csv('data.csv', header=None, sep=r'\s+', names = col_names)
data
data.head()
默认查看前五行,可以在里面加上个数 data.head(10)
查看前十行data.tail()
一样,从后面开始数data.describe()
可以获得一些统计信息
data.info()
可以获得表格的信息
配合 绘制折线图
直方图
累计直方图
散点图