Numpy简介

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

Numpy的一个重要特性是它的数组计算Numpy是C写的,比python的for循环快很多

在使用Numpy之前,我们需要导入numpy包:

from numpy import *
如果只采用简单的 数组上的数学操作假如我们想将列表中的每个元素增加 1 ,但列表不支持这样的操作(报错):

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

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-3-068856d2a224> in <module>()
      1 a = [1, 2, 3, 4]
----> 2 a + 1

TypeError: can only concatenate list (not "int") to list

转成 array 便能成功:
a = array(a)
a + 1
输出结果: array([2, 3, 4, 5])

修改数组形状

a.shape
a.shape = 2,2
a
输出结果:
(4L,)
array([[1, 2],
       [3, 4]])

画图

linspace 用来生成一组等间隔的数据:
a = linspace(0, 2*pi, 21)
%precision 3
a
b = sin(a)
b
array([ 0.   ,  0.314,  0.628,  0.942,  1.257,  1.571,  1.885,  2.199,
        2.513,  2.827,  3.142,  3.456,  3.77 ,  4.084,  4.398,  4.712,
        5.027,  5.341,  5.655,  5.969,  6.283])
array([  0.000e+00,   3.090e-01,   5.878e-01,   8.090e-01,   9.511e-01,
         1.000e+00,   9.511e-01,   8.090e-01,   5.878e-01,   3.090e-01,
         1.225e-16,  -3.090e-01,  -5.878e-01,  -8.090e-01,  -9.511e-01,
        -1.000e+00,  -9.511e-01,  -8.090e-01,  -5.878e-01,  -3.090e-01,
        -2.449e-16])
%matplotlib inline
plot(a, b)



从数组中选择元素

假设我们想选取数组b中所有非负的部分,首先可以利用  b  产生一组布尔值:
b >= 0
mask = b >= 0
plot(a[mask], b[mask], 'ro')
array([ True,  True,  True,  True,  True,  True,  True,  True,  True,
        True,  True, False, False, False, False, False, False, False,
       False, False, False], dtype=bool)

参考文献:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值