zoukankan      html  css  js  c++  java
  • scipy几乎实现numpy的所有函数

    NumPy和SciPy的关系?

     

    numpy提供了数组对象,面向的任何使用者。scipy在numpy的基础上,面向科学家和工程师,提供了更为精准和广泛的函数。scipy几乎实现numpy的所有函数,一般而言,如果scipy和numpy都有这个函数的话,应该用scipy中的版本,因为scipy中的版本往往做了改进,效率更高。但是,有一些同名函数,却有着不同的行为,比如log10,linalg.solve。这些不同的行为,最需要我们的注意。

    scipy对numpy的“覆盖”是怎么样的?用SciPy Reference Guide中的话说,“all of the Numpy functions have been subsumed into the scipy namespace so that all of those functions are available without additionally importing Numpy.”

    同时,在scipy的__init__.py中,找到了这个:

    import numpy as _num

    ​linalg = None

    from numpy import *

    from numpy.random import rand, randn

    from numpy.fft import fft, ifft

    from numpy.lib.scimath import *

    可见,reference所言不虚,但也不精准。对于两者的清晰界定,以__init__.py为准。

    如果想继续深究numpy和scipy中同名函数的不同,有一个函数非常好用,那就是source,它可以用来查看源代码。通过分析源代码,自然就能很清楚的搞明白实现的不同啦。

    以上可知,尽管有了scipy,numpy的用处就没多大了,但是呢,numpy还是有一定的“不可替代性”。所以,没什么特殊的要求,这样引入:

    import numpy as np

    import scipy as sp

    import matplotlib.pyplot as plt

  • 相关阅读:
    javax.naming.NameNotFoundException: Name jdbc is not bound in this Context
    Maven无法下载com.oracle:ojdbc14:jar解决方法
    打赏
    badge徽章、挂件模版
    adb修改手机分辨率
    git忽略上传文件git忽略上传文件
    python爬虫用drony转发进行抓包转发
    pycharm远程服务器进行调试
    Ubuntu上latex+atom配置
    Ubuntu下设置开机后自动运行命令
  • 原文地址:https://www.cnblogs.com/timssd/p/7858549.html
Copyright © 2011-2022 走看看