NumPy - Array da dati esistenti
In questo capitolo, discuteremo come creare un array da dati esistenti.
numpy.asarray
Questa funzione è simile a numpy.array tranne per il fatto che ha meno parametri. Questa routine è utile per convertire la sequenza Python in ndarray.
numpy.asarray(a, dtype = None, order = None)
Il costruttore accetta i seguenti parametri.
Sr.No. | Parametro e descrizione |
---|---|
1 | a Immettere i dati in qualsiasi forma come elenco, elenco di tuple, tuple, tupla di tuple o tupla di elenchi |
2 | dtype Per impostazione predefinita, il tipo di dati dei dati di input viene applicato al ndarray risultante |
3 | order C (riga maggiore) o F (colonna maggiore). C è l'impostazione predefinita |
I seguenti esempi mostrano come utilizzare il asarray funzione.
Esempio 1
# convert list to ndarray
import numpy as np
x = [1,2,3]
a = np.asarray(x)
print a
Il suo output sarebbe il seguente:
[1 2 3]
Esempio 2
# dtype is set
import numpy as np
x = [1,2,3]
a = np.asarray(x, dtype = float)
print a
Ora, l'output sarebbe il seguente:
[ 1. 2. 3.]
Esempio 3
# ndarray from tuple
import numpy as np
x = (1,2,3)
a = np.asarray(x)
print a
Il suo output sarebbe -
[1 2 3]
Esempio 4
# ndarray from list of tuples
import numpy as np
x = [(1,2,3),(4,5)]
a = np.asarray(x)
print a
Qui, l'output sarebbe il seguente:
[(1, 2, 3) (4, 5)]
numpy.frombuffer
Questa funzione interpreta un buffer come array unidimensionale. Qualsiasi oggetto che espone l'interfaccia del buffer viene utilizzato come parametro per restituire un filendarray.
numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)
Il costruttore accetta i seguenti parametri.
Sr.No. | Parametro e descrizione |
---|---|
1 | buffer Qualsiasi oggetto che espone l'interfaccia del buffer |
2 | dtype Tipo di dati del ndarray restituito. Il valore predefinito è float |
3 | count Il numero di elementi da leggere, l'impostazione predefinita -1 indica tutti i dati |
4 | offset La posizione di partenza da cui leggere. L'impostazione predefinita è 0 |
Esempio
I seguenti esempi dimostrano l'uso di frombuffer funzione.
import numpy as np
s = 'Hello World'
a = np.frombuffer(s, dtype = 'S1')
print a
Ecco il suo output:
['H' 'e' 'l' 'l' 'o' ' ' 'W' 'o' 'r' 'l' 'd']
numpy.fromiter
Questa funzione crea un file ndarrayoggetto da qualsiasi oggetto iterabile. Una nuova matrice unidimensionale viene restituita da questa funzione.
numpy.fromiter(iterable, dtype, count = -1)
Qui, il costruttore accetta i seguenti parametri.
Sr.No. | Parametro e descrizione |
---|---|
1 | iterable Qualsiasi oggetto iterabile |
2 | dtype Tipo di dati della matrice risultante |
3 | count Il numero di elementi da leggere dall'iteratore. L'impostazione predefinita è -1, il che significa che tutti i dati devono essere letti |
I seguenti esempi mostrano come utilizzare il built-in range()funzione per restituire un oggetto elenco. Un iteratore di questo elenco viene utilizzato per formare un filendarray oggetto.
Esempio 1
# create list object using range function
import numpy as np
list = range(5)
print list
Il suo output è il seguente:
[0, 1, 2, 3, 4]
Esempio 2
# obtain iterator object from list
import numpy as np
list = range(5)
it = iter(list)
# use iterator to create ndarray
x = np.fromiter(it, dtype = float)
print x
Ora, l'output sarebbe il seguente:
[0. 1. 2. 3. 4.]