logo

numpy.loadtxt() en Python

Le module numpy de Python fournit une fonction pour charger des données à partir d'un fichier texte. Le module numpy fournit chargertxt() fonction pour être un lecteur rapide pour des fichiers texte simples.

Remarque : Dans le fichier texte, chaque ligne doit avoir le même nombre de valeurs.

Syntaxe

 numpy.loadtxt(fname, dtype=, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0) 

Paramètres

Il s'agit du paramètre suivant dans la fonction numpy .loadtxt() :

fname : fichier, str ou pathlib.Path

Ce paramètre définit le fichier, le nom de fichier ou le générateur à lire. Tout d'abord, nous allons décomposer le fichier, si l'extension du nom de fichier est .gz et .bz2 . Après cela, les générateurs renverront des chaînes d'octets pour Python 3k.

dtype : type de données (facultatif)

Ce paramètre définit le type de données pour le tableau résultant, et par défaut, le type de données sera le float. Le tableau résultant sera unidimensionnel lorsqu’il s’agit d’un type de données structuré. Chaque ligne est interprétée comme un élément de tableau et le nombre de colonnes utilisées doit correspondre au nombre de champs du type de données.

commentaires : str ou séquence (facultatif)

Ce paramètre définit les caractères ou liste de caractères utilisés pour indiquer le début du commentaire. Par défaut, ce sera ' # '.

chaîne java avec format

délimiteur : str (facultatif)

Ce paramètre définit la chaîne utilisée pour séparer les valeurs. Par défaut, ce sera n'importe quel espace.

convertisseurs : dict (facultatif)

raccourcis clavier Linux

Ce paramètre définit un numéro de colonne de mappage de dictionnaire vers une fonction qui convertira la colonne mappée en flottant. Lorsque column() est une chaîne de date alors convertisseurs={0:datestr2num} . Ce paramètre est également utilisé pour fournir une valeur par défaut pour les données manquantes, comme convertisseurs= {3 : lambda s : float(s.strip() ou 0)} .

skiprows : int (facultatif)

Ce paramètre est utilisé pour ignorer les premiers 'skiprows', et par défaut, il sera 0.

usecols : int ou séquence (facultatif)

Ce paramètre définit les colonnes à lire, 0 étant la première. Par exemple, usecols=(0, 3, 5) extraira le 1St, 4ème, et 5èmecolonne. Par défaut, sa valeur est None, ce qui entraîne la lecture de toutes les colonnes. Dans la nouvelle version, nous pouvons utiliser un entier au lieu d'un tuple si nous voulons lire une seule colonne.

décompresser : bool (facultatif)

Si ce paramètre est défini sur true, alors le tableau renvoyé est transposé, de sorte que les arguments puissent être décompressés en utilisant x, y, z =chargertxt(...) . Les tableaux sont renvoyés pour chaque champ lors de son utilisation avec le type de données structuré. Par défaut, il sera défini sur False.

ndim : int (facultatif)

exemple de sous-chaîne en java

Le tableau renvoyé aura les dimensions 'ndmin'. Sinon, cela serrera l’axe monodimensionnel. Valeurs légales : 0 (par défaut), 1 ou 2.

Renvoie : out (ndarray)

Il lit les données du fichier texte sous la forme d'un ndarray.

Exemple 1:

 import numpy as np from io import StringIO c = StringIO(u'0 1
2 3') c np.loadtxt(c) 

Sortir:

 array([[0., 1.], [2., 3.]]) 

Dans le code ci-dessus

  • Nous avons importé numpy avec le nom d'alias np.
  • Nous avons également importé ChaîneIO depuis ce .
  • Nous avons déclaré la variable 'c' et attribué la valeur renvoyée par la fonction StringIO().
  • Nous avons transmis les données Unicode dans la fonction.
  • Enfin, nous avons essayé d'imprimer la valeur de retour de np.loadtxt() dans lequel nous avons transmis le fichier ou le nom de fichier.

Dans la sortie, il affiche le contenu du fichier sous la forme de ndarray .

Exemple 2 :

 import numpy as np from io import StringIO d = StringIO(u'M 21 72
F 35 58') np.loadtxt(d, dtype={'names': ('gender', 'age', 'weight'),'formats': ('S1', 'i4', 'f4')}) 

Sortir:

 array([(&apos;M&apos;, 21, 72.), (&apos;F&apos;, 35, 58.)], dtype=[(&apos;gender&apos;, &apos;S1&apos;), (&apos;age&apos;, &apos; <i4'), ('weight', '<f4')]) < pre> <h3>Example 3:</h3> <pre> import numpy as np from io import StringIO c = StringIO(u&apos;1,3,2
3,5,4&apos;) x, y = np.loadtxt(c, delimiter=&apos;,&apos;, usecols=(0, 2), unpack=True) x y </pre> <p> <strong>Output:</strong> </p> <pre> array([1., 3.]) array([2., 4.]) </pre> <p> <strong>In the above code</strong> </p> <ul> <li>We have imported numpy with alias name np.</li> <li>We have also imported <strong>StringIO</strong> from <strong>io</strong> . </li> <li>We have declared the variable &apos;c&apos; and assigned the returned value of the StringIO() function.</li> <li>We have passed the unicode data in the function.</li> <li>Lastly, we tried to print the return value of np.loadtxt in which we passed the file or filename, set delimiter, usecols, and unpack to True.</li> </ul> <p>In the output, it displays the content of the file has been shown in the form of ndarray.</p> <hr></i4'),>

Sortir:

 array([1., 3.]) array([2., 4.]) 

Dans le code ci-dessus

  • Nous avons importé numpy avec le nom d'alias np.
  • Nous avons également importé ChaîneIO depuis ce .
  • Nous avons déclaré la variable 'c' et attribué la valeur renvoyée par la fonction StringIO().
  • Nous avons transmis les données Unicode dans la fonction.
  • Enfin, nous avons essayé d'imprimer la valeur de retour de np.loadtxt dans laquelle nous avons transmis le fichier ou le nom de fichier, défini le délimiteur, usecols et décompressé sur True.

Dans la sortie, il affiche le contenu du fichier sous la forme de ndarray.