jjzjj

python - 使用 numpy ndarray 计算平均值

文本文件如下所示:davidweight_200550davidweight_201260davidheight_2005150davidheight_2012160markweight_200590markweight_201285markheight_2005160markheight_2012170如何计算david和mark的体重和高度的平均值,如下所示:david>>mean(weight_2005andweight_2012),mean(height_2005andheight_2012)mark>>mean(weight_2005andweight_2012),mean(

python - 为什么 ndarray 允许浮点索引

我可以知道为什么ndarray允许浮点索引访问,那是什么意思?>>>wk1=numpy.arange(10)>>>wk1[1:2.8]array([1])>>>wk1=[1,2,3,4,5,6,7,8,9,10]>>>wk1[1:2.8]Traceback(mostrecentcalllast):File"",line1,inTypeError:sliceindicesmustbeintegersorNoneorhavean__index__method>>> 最佳答案 从1.12版开始,不再允许在ndarray中使用浮点索引并引发

【解决报错&原因分析】画图plt.contourf(X,Y,Z)报错TypeError: unhashable type: ‘numpy.ndarray‘(含详细示例讲解)

今天简化画图代码的时候发现了很奇怪的报错现象,经过一系列尝试找到了根源,希望帮助后来人,主要问题出现在如下语句中(为了体现问题、方便比对,特意在这改变了x为xx,如果你不想看这冗长的示例,可以直接按照下文红字的方法修改)importnumpyasnpimportmatplotlib.pyplotasplt#===========做等值线图===========y=x=np.arange(10)xx=[str(i)foriinx]#将x中的元素转化为字符串类型X,Y=np.meshgrid(xx,y)Z=np.sin(x)[:,np.newaxis]*np.cos(y)[np.newaxis,:

python - 将 ndarray 除以标量 - Numpy/Python

我只是想知道如何在不使用循环的情况下做这样的事情。我做了一个简单的测试,试图像使用numpy.array一样调用除法,但我得到了相同的ndarray。N=2M=3matrix_a=np.array([[15.,27.,360.],[180.,265.,79.]])matrix_b=np.array([[.5,1.,.3],[.25,.7,.4]])matrix_c=np.zeros((N,M),float)n_size=360./Nm_size=1./Mforiinrange(N):forjinrange(M):n=int(matrix_a[i][j]/n_size)%Nm=int(m

python - 子类化 numpy ndarray 问题

我想子类化numpyndarray。但是,我无法更改数组。为什么self=...不改变数组?谢谢。importnumpyasnpclassData(np.ndarray):def__new__(cls,inputarr):obj=np.asarray(inputarr).view(cls)returnobjdefremove_some(self,t):test_cols,test_vals=zip(*t)test_cols=self[list(test_cols)]test_vals=np.array(test_vals,test_cols.dtype)self=self[test_c

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

这与我的问题有关,here.我现在有更新后的代码如下:importnumpyasnpimport_pickleascPicklefromPILimportImageimportsys,ospixels=[]labels=[]traindata=[]i=0directory='C:\\Users\\abc\\Desktop\\Testing\\images'forroot,dirs,filesinos.walk(directory):forfileinfiles:floc=fileim=Image.open(str(directory)+'\\'+floc)pix=np.array(im

python - 错误 "TypeError: type numpy.ndarray doesn' t 定义 __round__ 方法”

importnumpy......#Predictionpredictions=model.predict(X_test)#roundpredictionsrounded=[round(x)forxinpredictions]print(rounded)"predictions"isalistofdecimalsbetween[0,1]withsigmoidoutput.为什么总是报这个错:File"/home/abigail/workspace/ml/src/network.py",line41,inrounded=[round(x)forxinpredictions]TypeErr

python - 转让 numpy 数据的所有权

在我的previousquestion,我学会了调整子类ndarray的大小。整洁的。不幸的是,当我尝试调整大小的数组是计算结果时,这不再有效:importnumpyasnpclassFoo(np.ndarray):def__new__(cls,shape,dtype=np.float32,buffer=None,offset=0,strides=None,order=None):returnnp.ndarray.__new__(cls,shape,dtype,buffer,offset,strides,order)def__array_prepare__(self,output,co

python - 多维 ndarray 的 argsort

我正在尝试获取索引以按最后一个轴对多维数组进行排序,例如>>>a=np.array([[3,1,2],[8,9,2]])我想要这样的索引i,>>>a[i]array([[1,2,3],[2,8,9]])基于numpy.argsort的文档我认为它应该这样做,但我收到了错误:>>>a[np.argsort(a)]IndexError:index2isoutofboundsforaxis0withsize2编辑:我需要以相同的方式重新排列相同形状的其他数组(例如数组b使得a.shape==b.shape)。..这样>>>b=np.array([[0,5,4],[3,9,1]])>>>b[i

python - numpy ndarray 可哈希性

我在理解如何管理numpy对象的可哈希性时遇到了一些问题。>>>importnumpyasnp>>>classVector(np.ndarray):...pass>>>nparray=np.array([0.])>>>vector=Vector(shape=(1,),buffer=nparray)>>>ndarray=np.ndarray(shape=(1,),buffer=nparray)>>>nparrayarray([0.])>>>ndarrayarray([0.])>>>vectorVector([0.])>>>'__hash__'indir(nparray)True>>>'_