科学计算库Numpy学习

科学计算库Numpy

参考:python数据分析与机器学习实战 唐宇迪

使用Anaconda安装包

Anaconda prompt中输入以下代码

1.查找相关包,其中tensorflow是关键词

anaconda search -t conda tensorflow

2.显示如何安装此包,其中PACKNAME是包名

anaconda show PACKNAME

3.复制相应命令

numpy矩阵基础

1.读取txt文件

numpy.genfromtxt("test.txt",delimiter=",",dtype=str)

para1:文件路径;para2:分隔符;para3:数据类型
2.打印帮助文档

print(help(numpy.genfromtxt))

3.array

#创造一个数组,二维两个中括号
vector=numpy.array([[2,3],[2,3,4]])
#打印size
print(vector.shape)
#得到当前类型
vector.dtype  #vector.dtype.name
#取出r=2,c=5元素
vector[1,4]
#slice操作
print(vector[:,1])        #c=2
print(vector[:,0:2])     #c=1&c=2
#判断,可进行与或操作(vector==10)&(vector==5)
vector=numpy.array([5,10,15,20])
equal_to_ten=(vector==10)   #对每一个元素都进行操作,返回的是索引
print(vector[equal_to_ten])
#整体类型转换
vector=vector.astype(float)
#求极值操作
vector.min()
matrix.sum(axis=1)  #按行求和  axis=0按列求和

要求numpy.array里元素是同一类型,会自动转换成统一类型

numpy常用函数

import numpy as np  #np是别名
print(np.arange(15))  #生成0-14整数数组
a=np.arange(15).reshape(3,5)  #转换成3*5矩阵
a.ndim  #维度
a.size  #元素个数
#初始化矩阵
np.zeros((3,4))  #default type=float, np.ones((3,4),dtype=np.int32)
np.arange(10,30,5)  #start,end,step 左闭右开
np.random.random((2,3))  #随机生成 -1,1
np.linspace(0,2*pi,100)  #平均取100个值 start,end,个数
a**2  #求平方
A*B #对应位置相乘
A.dot(B) #矩阵相乘,也可写成 np.dot(A,B)
np.floor(A)  #向下取整
a.raval()  #矩阵-->向量
a.T  #转置
a.reshape(3,-1)   #自己计算列数

np.hstack((a,b))  #横着拼(增加属性),np.vstack((a,b))竖着拼(增加样本)
np.hsplit(a,3)   #横着切分成3份
np.hsplit(a,(3,4))   #前3列,前4列切两刀

b=a  #不同名称,指向同一对象。类似于引用
c=a.view()  #浅复制。指向不同对象,共用值
d=a.copy()  #深复制。复制完没有关系

data.argmax(axis=0)  #按列返回最大值的位置

np.tile(a,(2,3))  #行和列变为原来2,3 倍

np.sort(a,axis=1)  #按行从小到大排序
np.argsort(a)  #从小到大值的索引

你可能感兴趣的:(python学习)