Ho un elenco in Python e voglio convertirlo in un array per poter usare la ravel()
funzione.
Ho un elenco in Python e voglio convertirlo in un array per poter usare la ravel()
funzione.
Risposte:
Usa numpy.asarray
:
import numpy as np
myarray = np.asarray(mylist)
myarray = np.array(mylist)
dovrebbe essere sufficiente.
array
è sufficiente, ma perché lasciarsi sfuggire la possibilità di educare l'OP a qualche buona abitudine mentre siamo qui?
from array import array
listA = list(range(0,50))
for item in listA:
print(item)
arrayA = array("i", listA)
for item in arrayA:
print(item)
Volevo un modo per farlo senza utilizzare un modulo aggiuntivo. Prima trasforma l'elenco in stringa, quindi aggiungi a un array:
dataset_list = ''.join(input_list)
dataset_array = []
for item in dataset_list.split(';'): # comma, or other
dataset_array.append(item)
dataset_list = ';'.join(input_list)
Se tutto ciò che vuoi è chiamare ravel
il tuo elenco (annidato, immagino?), Puoi farlo direttamente, numpy
farà il casting per te:
L = [[1,None,3],["The", "quick", object]]
np.ravel(L)
# array([1, None, 3, 'The', 'quick', <class 'object'>], dtype=object)
Vale anche la pena ricordare che non è necessario passare numpy
affatto .
se la variabile b ha un elenco, puoi semplicemente fare quanto segue:
crea una nuova variabile "a" come: a=[]
quindi assegna l'elenco a "a" come:a=b
ora "a" ha tutti i componenti della lista "b" in array.
quindi hai convertito con successo l'elenco in array.