• 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

  • 相关阅读:
    对WEB标准以及W3C的理解与认识
    px和em的区别
    数组去重的方法
    什么是CSS Hack?
    在网页中应该使用奇数还是偶数的字体大小?为什么?
    ajax的封装过程
    WebService简介及使用
    SQL 不能插入重复键-错误 主键列是自动增长
    SqlServer语句执行
    正则表达式
  • 原文地址:https://www.cnblogs.com/timssd/p/7858549.html
Copyright © 2020-2023  润新知