基于Anaconda的Numpy学习

前面我们讲了anaconda的下载及安装详细教程,现在我们开始学习numpy,其是python数值计算最重要的基础包。

anaconda和pycharm是两套不同的系统,所以我们要区分开来。

Anaconda安装模块

首先看安装相关模块怎么整?

在pycharm中,我们安装某一模块,经常在cmd控制台中,使用pip install 模块名来安装模块。

但是在anaconda中,我们应该在开始菜单,找到anaconda下面的anaconda prompt,并且键入命令conda install 模块名来安装模块。

在这里插入图片描述
由于我的已经安装了,所以显示如下信息,如果提示你们升级,点击y即可。

在这里插入图片描述

jupyter notebook使用

首先在开始菜单中找到anaconda下面的jupyter notebook,点击进入,其会自动跳转到相应页面。

在这里插入图片描述
跳到主页面后,我们可以在这里new python3文件。

在这里插入图片描述
其界面相关按钮及其含义如图所示。

在这里插入图片描述

Numpy

首先我们来看几个实例。

import numpy
vector=numpy.array([[5,10,15],[20,25,30],[35,40,45]])
print(vector)

这里调用numpy.array()方法,生成一个二维数组,注意整个参数外面是一个[],然后里面每一个[]代表一行,注意格式。

在这里插入图片描述

import numpy as np
a = np.arange(1,10,2)
print(a)
print(type(a))
print(a.dtype)

np.arange和python中的range用法类似,这里type(a)是输出a的类型,a是ndarray类型,dtype是ndarray对象的属性,a.dtype是输出a中存储的数据类型。

在这里插入图片描述

import numpy as np
b = np.array(range(1,6),dtype='float32')
print(b)
print(type(b))
print(b.dtype)

我们可以在函数中传入参数,设置dtype。

在这里插入图片描述

c = np.arange(1,10).reshape(3,3)
c

我们可以调用reshape(行,列)方法,来改变ndarray对象的形状。

在打印的时候,可以直接使用变量名,但是其只能在最后一行,如果想打印非最后一行的数据,还是需要print(变量名)。

在这里插入图片描述
也可以对矩阵进行运算,如下!

在这里插入图片描述

Numpy属性

结合上述实例,想必对Numpy有一定的小了解,下面列表中列出了Numpy的相关属性,其中ndarray即为我们创建的Numpy对象!
在这里插入图片描述
在这里插入图片描述

Numpy方法

在这里插入图片描述
在这里插入图片描述
演示如下:

# 创建全为1的对象 第一个参数是对象的形状 (行数,列数) 第二个参数可以指定数据类型
d = np.ones((3,3),dtype=np.float16)
d

在这里插入图片描述

# 创建全为1的对象 参数是一个对象 会按照对象的形状创建全为1的数组
e = np.ones_like([[1,2,3],[4,5,6]])
e

在这里插入图片描述
创建等差数组,默认包含stop。

在这里插入图片描述
创建随机数组,使用的是np.random,由于很多,遇到了查一下就行。

改变类型和形状如下:
在这里插入图片描述

f = np.arange(1,10)
print(f)
print(type(f))
print(f.shape)
print(f.dtype)
# reshape是产生一个新的对象
g = f.reshape((3,3))
print(g)
print(type(g))
print(g.shape)
print(g.dtype)
# resize是改变原来的对象
g.resize((1,9))
print(g)
print(type(g))
print(g.shape)
print(g.dtype)
g.astype(np.float16).dtype

在这里插入图片描述
矩阵转置可以使用ndarray.T或者np.transpose(ndarray)。
在这里插入图片描述
逆矩阵:
在这里插入图片描述
单位矩阵:
在这里插入图片描述
点积:i,j表示两个矩阵。

np.dot(i,j)
i @ j

索引和切片

在这里插入图片描述
注意逗号后面可以省略,前面不可以省略。
在这里插入图片描述

矩阵拼接

nd1 = np.arange(1,7).reshape(2,3)
nd2 = np.arange(1,10).reshape(3,3)
# vstack()是垂直拼接,即拼接行,故两个矩阵的列相同。参数为tuple类型。
np.vstack((nd1,nd2))

在这里插入图片描述

nd3 = np.arange(1,7).reshape(3,2)
nd4 = np.arange(1,10).reshape(3,3)
# hstack()是水平拼接,即拼接列,故两个矩阵的行相同。参数为tuple类型。
np.hstack((nd3,nd4))

在这里插入图片描述

np.concatenate((nd3,nd4),axis=1)
np.concatenate((nd1,nd2),axis=0)

axis表示轴,在numpy中的二维数组,axis有0轴和1轴,0表示行变列不变,1表示列变行不变。
在这里插入图片描述
叮咚!结束!

  • 9
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值