0
votes

Convertir la liste en tableau 2D numpy

Comment convertir une liste en NDARRAY 2D numpy. Par exemple:

>> print(arr)
>> array([[20],
       [30],
       [40],
       [50],
       [60]])

>> print(arr.shape)
>> (5, 1)


3 commentaires

[[[I] pour I in X] ou np.reshape ([20, 30, 40, 50, 60], (-1,1)) ?


@Yoshi merci pour la suggestion mais cela ne semble pas bien m'aider :(


Je viens d'oublier la question. @Sushanth réponse est ce que je pense que vous recherchez :)


3 Réponses :


0
votes

Vous pouvez utiliser une compréhension de liste, puis la convertir en tableau NUMPY:

import numpy as np

x = [20, 30, 40, 50, 60]

x_nested = [[item] for item in x]

x_numpy = np.array(x_nested)


1 commentaires

C'est une technique beaucoup moins efficace. Lorsqu'il s'agit de données numériques, procurez-vous que possible dans le plus rapidement possible, puis le manipuler.



4
votes

Convertissez-le en tableau et remodelez:

[[20]
 [30]
 [40]
 [50]
 [60]]


0 commentaires

2
votes

Si vous avez besoin de vos calculs plus efficaces, utilisez des tableaux numpus au lieu de compréhensions de liste. Ceci est une solution alternative en utilisant Barray diffusion

x = [20, 30, 40, 50, 60]
x = np.array(x) #convert your list to numpy array
result = x[:, None] #use numpy broadcasting


1 commentaires

Ce n'est pas la radiodiffusion. C'est juste l'indexation. Aucun est un alias pour np.newaxis