Mon fichier CSV comporte un mélange de chaînes et de colonnes numériques. nump.recfromcsv
les inférée avec précision (woo-hoo) donnant une DTYPE derecopiage numpy de CSV dtype a beaucoup de colonnes mais la forme dit juste une rangée, pourquoi est-ce?
DTYPE = [('null', 'S7'), ('00', '< f8'), ('nsubj', « S20 '), (' g ',' S1 '), ...
Donc un mélange de chaînes et de chiffres comme vous pouvez le voir. Mais numpy.shape(csv)
me donne
(133433,)
Ce qui me confond, car DTYPE impliquait qu'il était au courant colonne. En outre, il accède de manière intuitive:
csv[1]
> ('def', 0.0, 'prep_to', 'g', 'query_w', 'indef', 0.0, ...
Je reçois aussi l'erreur
ne peut pas effectuer de réduire avec type flexible
sur les opérations comme .tout(), même lors de l'utilisation d'une colonne numérique . Je ne suis pas sûr si je travaille vraiment avec une entité semblable à une table (deux dimensions) ou juste une liste de quelque chose. Pourquoi le dtype est-il incompatible avec la forme?
Jetez un oeil à ma réponse récente concernant 'genfromtxt' et' dtype', http://stackoverflow.com/a/36814096/901925. Je ne suis pas aussi familier avec 'recfromcsv', mais je pense que les tableaux seront similaires, un tableau 1d avec un composé' dtype'. Vous accédez aux lignes (enregistrements) par numéro, champs (colonnes) par nom. Pour un 'recarray',' csr.null' devrait vous donner un tableau de la 1ère colonne, les noms 'S7'. – hpaulj