Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

'numpy.ndarray' object has no attribute 'index'

Tags:

python

numpy

I'm trying to find the index of v but it always gives me:
'numpy.ndarray' object has no attribute 'index' I've tried:
TypeError: slice indices must be integers or None or have an __index__ method. How to resolve it? How to find the index of an array within an array.
Finding the index of an item given a list containing it in Python

none of them have answered my question

v = np.random.randn(10)
print(v)
maximum = np.max(v)
minimum = np.min(v)
print(maximum, minimum)
v.index(maximum, minimum)

edit: Oh, crap i put ma instead of maximum my bad. I just started programing then.

like image 989
Vehicom0607 Avatar asked Jul 01 '18 21:07

Vehicom0607


People also ask

How do I fix NumPy Ndarray object has no attribute append?

We can resolve this error by using the numpy. append() method provided by the NumPy library. The numpy. append() method returns a copy of an array with values appended to the specified axis.


2 Answers

First of all, index is a list method. Here v is a numpy array and you need to do the following:

v = np.random.randn(10)
print(v)
maximum = np.max(v)
minimum = np.min(v)
print(maximum, minimum)

index_of_maximum = np.where(v == maximum)
index_of_minimum = np.where(v == minimum)

Get the elements using these indices:

v[index_of_minimum]
v[index_of_maximum]

Verify using assert:

assert(v[index_of_maximum] == v.max())
assert(v[index_of_minimum] == v.min())
like image 59
seralouk Avatar answered Oct 24 '22 04:10

seralouk


If you are using Numpy:

values = np.array([3,6,1,5])
index_min = np.argmin(values)
print(index_min)

returns the index of 2.

like image 15
ColinMac Avatar answered Oct 24 '22 06:10

ColinMac