一、Numpy-1.概念

"""
    Numpy是Python数值计算最重要的基础包。大多数提供科学计算的包都是用numpy的数组作为构建基础

    Numpy的部分功能如下:
        1.ndarray:一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组
        2.用于对整组数据进行快速运算的标准数学函数(无需编写循环)
        3.用于读写磁盘数据的工具以及用于操作内存映射文件的工具
        4.线性代数、随机数生成以及傅里叶变换功能
        5.用于集成由C、C++、Fortran等语言编写的代码的A C API

    由于Numpy提供了一个简单易用的C API,因此很容易将数据传递给由低级语言编写的外部库,外部库也能以Numpy数组的形式将数据返回给Python。
    这个功能使Python成为一种包装C、C++、Fortran历史代码库的选择,并使被包装库拥有一个动态的、易用的接口

    Numpy之于数值计算要特别重要的原因之一,是因为可以高效的处理大数组的数据,高效的原因如下:
        1.Numpy是在一个连续的内存块中储存数据,独立于其他Python内置对象。Numpy的C语言编写的算法库可以操作内存,而不必进行类型检查或其他前期工作。
          比起Python的内置序列,Numpy数组使用的内存更少
        2.Numpy可以在整个数组上执行复杂的计算,而不需要Python的for循环,并且速度更快
"""
import numpy as np
import time

# 为体现具体的性能差距,考一个包含一百万整数的数组,和一个等价的Python列表,计算序列分别乘以2,所花费的时间
my_list = list(range(1000000))
my_a
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本关任务:编写一个程序,实现第一关的向量版,即带漂移的一维随机游走的向量版实现。 相关知识 为了完成本关任务,你需要掌握: 1.常见Python随机数函数; 2.随机游走(random walk)。 常见Python随机数函数 import numpy r = numpy.random.random(n) [0, 1) n个实数 r = numpy.random.uniform(a, b, n) [a, b) n个实数 i = numpy.random.randint(a, b+1, n) [a, b] 整数 i = numpy.random.random_integers(a, b, n) [a, b] 整数 随机游走(random walk) 也称随机漫步,是指基于过去的表现,无法预测将来的发展步骤和方向。其概念接近于布朗运动,是布朗运动的理想数学状态。醉汉行走的轨迹、布朗运动、股票的涨跌等行为都可用随机游走来模拟。 编程要求 根据提示,在右侧编辑器补充代码,完善一维随机游走程序,使得向右移动的概率为 r,向左移动的概率为 1-r(生成中的数字,而不是{1,2}中的整数)。在 n s ​ 步后计算 n p ​ 个粒子的平均位置。 在数学上可以证明,在 n p ​ →∞时,平均位置逼近 rn s ​ −(1−r)n s ​ (n s ​ 是步数)。 请你编写函数 random_walk1D_drift(np, ns, r)的向量版实现,返回 np 个粒子随机游走 ns 步(每步右移概率为 r)后平均位置的估算值。 提示:使用 numpy 库中数组类型及相关函数。 测试说明 平台会对你编写的代码进行测试: 设置numpy.random.seed(10),np = 1000(粒子数),r=0.3(每步右移概率),ns =100(步数)时,预期输出: 粒子理论位置: -40.00000 粒子实际平均位置: -39.26200
05-25

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值