Meilleure façon de créer un tableau NumPy à partir d'un dictionnaire?

Je viens juste de commencer avec NumPy donc j'ai peut-être raté quelques concepts de base...

Quelle est la meilleure façon de créer un tableau NumPy à partir d'un dictionnaire dont les valeurs sont des listes?

Quelque chose comme ceci:

d = { 1: [10,20,30] , 2: [50,60], 3: [100,200,300,400,500] }

Doit se transformer en quelque chose comme:

data = [
  [10,20,30,?,?],
  [50,60,?,?,?],
  [100,200,300,400,500]
]

Je vais faire quelques statistiques de base sur chaque ligne, par exemple:

deviations = numpy.std(data, axis=1)

Questions:

  • Quel est le meilleur /le plus efficace pour créer de la numpy.tableau à partir du dictionnaire? Le dictionnaire est grande; un couple de millions de clés, chacune avec ~20 articles.

  • Le nombre de valeurs pour chaque "ligne" sont différents. Si je comprends bien numpy veut uniforme de taille, de sorte que dois-je remplir pour les éléments manquants à faire des mst() heureux?

Mise à jour: Une chose que j'ai oublié de mentionner -, tandis que le python techniques sont raisonnables (par exemple. boucle de plus de quelques millions d'articles est rapide), il est limité à un seul PROCESSEUR. Numpy opérations échelle bien pour le matériel et a frappé tous les Processeurs, de sorte qu'ils sont beaux.

OriginalL'auteur Parand | 2009-03-02