NumPy numpy.loadtxt() Função

Suraj Joshi 30 janeiro 2023
  1. A sintaxe de numpy.loadtxt():
  2. Códigos de exemplo: NumPy Ler ficheiro txt Utilizando numpy.loadtxt() Função
  3. Códigos de exemplo: Definir o parâmetro dtype em numpy.loadtxt() Function While Reading the txt File
  4. Códigos de exemplo: defina o parâmetro delimitador na função numpy.loadtxt() ao ler arquivos txt
  5. Códigos de exemplo: defina o parâmetro usecols na função numpy.loadtxt() ao ler o arquivo txt
  6. Códigos de exemplo: defina o parâmetro unpack na função numpy.loadtxt() ao ler arquivos txt
NumPy numpy.loadtxt() Função

A função numpy.loadtxt() carrega dados de um ficheiro de texto e fornece uma abordagem rápida para ficheiros de texto simples.

A sintaxe de numpy.loadtxt():

numpy.loadtxt(fname,
              dtype= < class 'float' > ,
              comments='#',
              delimiter=None,
              converters=None,
              skiprows=0,
              usecols=None,
              unpack=False,
              ndmin=0,
              encoding='bytes',
              max_rows=None)

Parâmetros

fname Caminho do ficheiro txt a importar
dtype Tipo de dados do array resultante
comments Caracteres ou lista de caracteres utilizados para indicar o início de um comentário
delimiter Delimitador a utilizar para analisar o conteúdo do ficheiro txt.
converters Número de coluna de mapeamento do dicionário para uma função que irá analisar a string de colunas para o valor desejado.
skiprows Que fila/fileiras saltar
usecols Os índices das colunas a serem lidos
unpack Transpor a matriz devolvida, para que os argumentos possam ser desembalados utilizando x, y, z = loadtxt(...). [unpack=True].
ndim Número mínimo de dimensões no array devolvida
encoding Codificação utilizada para descodificar o ficheiro de entrada.
max_rows Número máximo de linhas a ler após as linhas skiprows.

Regresso

Matriz N-dimensional lida a partir do ficheiro txt.

Códigos de exemplo: NumPy Ler ficheiro txt Utilizando numpy.loadtxt() Função

import numpy as np
  
from io import StringIO    
  
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4") 
a = np.loadtxt(f) 

print("The loaded array is:")
  
print(a)

Resultado:

 The loaded array is:
[[ 3.  6.  8.]
 [12.  9.  1.]
 [ 2.  3.  4.]]

Carrega o ficheiro txt para a matriz NumPy.

Aqui, o StringIO actua como um objecto de ficheiro.

Podemos também fornecer o caminho do ficheiro como argumento para a função np.loadtxt, utilizando caminhos absolutos e relativos.

Códigos de exemplo: Definir o parâmetro dtype em numpy.loadtxt() Function While Reading the txt File

Por defeito, o tipo de dados de valores de matriz lidos a partir de um ficheiro txt é float. Podemos definir manualmente o tipo de dados dos elementos utilizando o parâmetro dtype.

import numpy as np
  
from io import StringIO    
  
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4") 
a = np.loadtxt(f,dtype="int") 

print("The loaded array is:")
  
print(a)

Resultado:

The loaded array is:
[[ 3  6  8]
 [12  9  1]
 [ 2  3  4]]

O código acima carrega todos os elementos para um array a partir de um ficheiro txt como números inteiros.

Códigos de exemplo: defina o parâmetro delimitador na função numpy.loadtxt() ao ler arquivos txt

Por defeito, o delimitador para separar os valores é o espaço em branco. Podemos definir manualmente o delimiter utilizando o parâmetro delimiter.

import numpy as np
  
from io import StringIO    
  
f = StringIO("3, 6, 8 \n12, 9, 1 \n 2, 3, 4") 
a = np.loadtxt(f,dtype="int",delimiter=",") 

print("The loaded array is:")
  
print(a) 

Resultado:

The loaded array is:
[[ 3  6  8]
 [12  9  1]
 [ 2  3  4]]

Como os valores do ficheiro txt são separados por ,, temos de utilizar , como delimitador para separar os valores enquanto lemos o ficheiro txt no array.

Códigos de exemplo: defina o parâmetro usecols na função numpy.loadtxt() ao ler o arquivo txt

import numpy as np
  
from io import StringIO    
  
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4") 
a = np.loadtxt(f,dtype="int",usecols =(0, 1)) 

print("The loaded array is:")
  
print(a)  

Resultado:

The loaded array is:
[[ 3  6]
 [12  9]
 [ 2  3]]

O usecols especifica que colunas devem ser lidas do ficheiro txt.

Lê apenas a 1ª e 2ª coluna do ficheiro txt para a matriz.

Códigos de exemplo: defina o parâmetro unpack na função numpy.loadtxt() ao ler arquivos txt

import numpy as np
  
from io import StringIO    
  
f = StringIO("3 6 8 \n12 9 1 \n 2 3 4") 
(x,y,z) = np.loadtxt(f,dtype="int",unpack=True) 

print(x)
print(y)
print(z) 

Resultado:

[ 3 12  2]
[6 9 3]
[8 1 4]

Transpõe a matriz e desembala as linhas do array transposta em variáveis especificadas.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn