草庐IT

$ndarray

全部标签

python - 更改子类 `ndarray` 就地 View

假设我有一个简单的Test类,它继承自numpy.ndarray(documentationonndarraysubclassing)。此类创建一个对象,该对象是另一个ndarray的部分View。现在我想创建一个方法来就地修改这个View。像这样的东西:importnumpyclassTest(numpy.ndarray):def__new__(cls,info='Testclass'):base=numpy.ndarray.__new__(cls,(6,2),dtype=float)view=base[0:2,:]view.info=inforeturnviewdef__array

python - __contains__ 如何为 ndarrays 工作?

>>>x=numpy.array([[1,2],...[3,4],...[5,6]])>>>[1,7]inxTrue>>>[1,2]inxTrue>>>[1,6]inxTrue>>>[2,6]inxTrue>>>[3,6]inxTrue>>>[2,3]inxFalse>>>[2,1]inxFalse>>>[1,2,3]inxFalse>>>[1,3,5]inxFalse我不知道__contains__如何用于ndarrays。找的时候没找到相关文档。它是如何工作的?是否在任何地方记录了它? 最佳答案 我在numpy/core/src

python - 计算复杂 numpy ndarray 的 abs()**2 的最节省内存的方法

我正在寻找最节省内存的方法来计算复杂的numpyndarray的绝对平方值arr=np.empty((250000,150),dtype='complex128')#commonsize我还没有找到完全可以做到np.abs()**2的ufunc。由于这种大小和类型的数组占用大约半GB,我正在寻找一种主要节省内存的方法。我也希望它是可移植的,所以最好是一些ufunc的组合。到目前为止,我的理解是这应该是最好的result=np.abs(arr)result**=2它将不必要地计算(**0.5)**2,但应该就地计算**2。总共峰值内存需求只有原始数组大小+结果数组大小,应该是1.5*原始

python - 如何以 Python 的方式平滑地集成 SQLAlchemy 和子类 Numpy.ndarray?

我想通过关系数据库中的SQLAlchemy存储带有注释(如name)的NumPy数组。为此,我通过数据传输对象(DTONumpy作为MyNumpy的一部分)将NumPy数组与其数据分开。使用Container收集NumPy对象。什么是修改Container(来自下面的示例)的一种很好的Pythonic方式,它直接作为列表提供MyNumpy对象而不是DTONumpy由SQLAlchemy提供?以下是问题的说明:importnumpyasnpimportzlibimportsqlalchemyassafromsqlalchemy.ormimportrelationship,scoped_s

python - 从 NumPy ndarray 中选择行

我只想从NumPy中选择某些行基于第二列中的值的数组。例如,这个测试数组的第二列有1到10的整数。>>>test=numpy.array([numpy.arange(100),numpy.random.randint(1,11,100)]).transpose()>>>test[:10,:]array([[0,6],[1,7],[2,10],[3,4],[4,1],[5,10],[6,6],[7,4],[8,6],[9,7]])如果我只想要第二个值为4的行,这很简单:>>>test[test[:,1]==4]array([[3,4],[7,4],[16,4],...[81,4],[83

python - 属性错误 : 'numpy.ndarray' object has no attribute 'append'

我正在尝试运行第二页上显示的代码:http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00-introduction-to-computer-science-and-programming-fall-2008/video-lectures/lecture-20/lec20.pdf您必须在代码的底部添加以下几行:simFlips(100,100)show()这是我在ubuntu上运行时遇到的错误:Traceback(mostrecentcalllast):File"coin.py",line36

python - 类型错误 : unhashable type: 'numpy.ndarray'

从包含三列数据的文本文件中,我希望能够从所有三列中获取slice数据,其中第一列中的值等于上面。然后我想将数据切片放入一个名为slice的新数组中(我使用的是Python2.7)above=range(18000,18060,5)data=np.loadtxt(open('data.txt'),delimiter=None)energies=(np.hsplit(data,3))[0]slice=set(energies)&set(above)以上返回:Traceback(mostrecentcalllast):File"",line1,inset(energies)&set(abov

python - 将ndarray从float64转换为整数

我在python中有一个ndarray,其dtype为float64。我想将数组转换为整数数组。我该怎么做?int()不起作用,因为它说它无法将其转换为标量。更改dtype字段本身显然不起作用,因为实际字节没有改变。我似乎在Google或文档中找不到任何内容-最好的方法是什么? 最佳答案 使用.astype。>>>a=numpy.array([1,2,3,4],dtype=numpy.float64)>>>aarray([1.,2.,3.,4.])>>>a.astype(numpy.int64)array([1,2,3,4])见do

python - 如何删除 numpy.ndarray 中包含非数字值的所有行

基本上,我正在做一些数据分析。我在数据集中读取为numpy.ndarray并且缺少一些值(或者只是不存在,是NaN,或者是写成“NA”的字符串")。我想清除所有包含此类条目的行。如何使用numpyndarray做到这一点? 最佳答案 >>>a=np.array([[1,2,3],[4,5,np.nan],[7,8,9]])array([[1.,2.,3.],[4.,5.,nan],[7.,8.,9.]])>>>a[~np.isnan(a).any(axis=1)]array([[1.,2.,3.],[7.,8.,9.]])并将其重新

python - NumPy 中的 ndarray 和数组有什么区别?

ndarray和有什么区别?和array在NumPy中?它们在NumPy源代码中的实现在哪里? 最佳答案 numpy.Array只是创建ndarray的便利功能;它本身不是一个类。您还可以使用numpy.ndarray创建一个数组,但这不是建议的方式。来自numpy.ndarray的文档字符串:Arraysshouldbeconstructedusingarray,zerosorempty...Theparametersgivenhererefertoalow-levelmethod(ndarray(...))forinstanti