alvas alvas - 11 months ago 155
Python Question

How to construct a ndarray from a numpy array? python

I can't seem to convert it into an

ndarray
in numpy, i've read http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html but it didn't show me how i can convert my input data as shown below into an
ndarray
.

How to construct a ndarray from a numpy array or a list of integer lists?
*What's the difference between ndarray and array?* I could just use an
array
type right?

I have a list of integer counts like this

[[1, 2, 4, 1, 5],
[6, 0, 0, 0, 2],
[0, 0, 0, 1, 0]]


And i manage to use this code to create a
np.array
as shown in http://docs.scipy.org/doc/numpy/reference/generated/numpy.array.html#numpy.array

import numpy as np
x = [[1, 2, 4, 1, 5],
[6, 0, 0, 0, 2],
[0, 0, 0, 1, 0]]
print np.array(x)


[out]:

[[1 2 4 1 5]
[6 0 0 0 2]
[0 0 0 1 0]]


But I can't change it into a
np.ndarray
with this code:

import numpy as np
x = [[1, 2, 4, 1, 5],
[6, 0, 0, 0, 2],
[0, 0, 0, 1, 0]]
print np.ndarray(x)


I got an error:

Traceback (most recent call last):
File "/home/alvas/workspace/sklearntut/test.py", line 7, in <module>
print np.ndarray(x)
TypeError: an integer is required


How do I create a np.ndarray with the list of integer counts i've got? What integer is the TypeError talking about?

Answer Source

An ndarray is a NumPy array.

>>> x = np.array([1, 2, 3])
>>> type(x)
<type 'numpy.ndarray'>

The difference between np.ndarray and np.array is that the former is the actual type, while the latter is a flexible shorthand function for constructing arrays from data in other formats. The TypeError comes your use of np.array arguments to np.ndarray, which takes completely different arguments (see docstrings).

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download