Skip to content

Como Importar e Escrever Arquivos de Texto

    trabalhando com textos

    Aqui, você aprenderá a importar arquivos de texto no Python, incluindo métodos nativos e NumPy, e a transformar esses dados em listas.

    1. O Arquivo de Texto

    Neste guia, usaremos um arquivo de texto simples chamado ‘nlp_wiki.txt,’ que contém o primeiro parágrafo da página da Wikipedia sobre Processamento de Linguagem Natural.

    “Processamento de linguagem natural (PLN) é um subcampo interdisciplinar da linguística, ciência da computação e inteligência artificial que lida com as interações entre computadores e linguagem humana, especialmente como programar computadores para processar e analisar grandes quantidades de dados em linguagem natural. O objetivo é que um computador seja capaz de “entender” o conteúdo de documentos, incluindo nuances contextuais da linguagem presente neles. A tecnologia pode, então, extrair informações e insights contidos nos documentos, bem como categorizar e organizar os documentos em si. Desafios no processamento de linguagem natural frequentemente envolvem reconhecimento de fala, compreensão de linguagem natural e geração de linguagem natural.

    2. Importando Dados de Texto em Python

    Importando dados usando a função read_table() do Pandas

    O Pandas possui a função read_table() para ler arquivos de texto com delimitação e exibir conteúdo em um DataFrame, facilitando a visualização.

    import pandas as pd
    
    pd.read_table('nlp_wiki.txt', header=None, delimiter=None)

    Indicamos o nome do arquivo de texto e usamos dois argumentos na função read_table():

    • header=None para dizer que a primeira linha é texto
    • delimiter=None para manter os parágrafos em uma única coluna

    No entanto, um DataFrame nem sempre é o melhor aqui. Os parágrafos são divididos em linhas, tornando difícil ver tudo. Uma alternativa é usar .to_list() na coluna.

    pd.read_table('nlp_wiki.txt', header=None, delimiter=None)[0].to_list()

    Isso retorna uma lista de listas que pode ser acessada como uma lista Python normal. Também imprime o texto completo.

    Personalizando a importação com read_table()

    A função read_table() tem argumentos opcionais, como:

    • skiprows=n (pulando as primeiras n linhas)
    • nrows=n (mantendo as primeiras n linhas)
    • skip_blank_lines=True evita linhas vazias

    Importando dados de texto com a função loadtxt() do NumPy

    A função loadtxt() do NumPy lê linhas de texto de um arquivo, útil quando se trabalha com NumPy, pois gera uma matriz NumPy como saída.

    import numpy as np
    
    np.loadtxt('nlp_wiki.txt', dtype="str", delimiter="\0")

    Evitamos dividir as linhas usando o caractere \0 como delimitador, permitindo que o texto seja lido sem divisões.

    Definimos o tipo de dados da matriz como ‘str’, que retorna uma string, e podemos convertê-lo em uma lista usando .tolist().

    3. Escrevendo Arquivos de Texto em Python

    Aprenderemos a salvar arquivos de texto a partir do Python, útil após manipulações com arquivos.

    Escrevendo arquivos de texto usando o método write() nativo

    Use o método write() com open() e with para escrever arquivos de texto em Python de forma eficiente.

    Este loop for usa uma compreensão de lista para interpretar cada linha usando quebras de linha (\n).

    with open("arquivo.txt", "w") as file:
        lines = [line.strip() for line in file]

    Isso cria uma lista onde cada item é um parágrafo. Diferentemente dos exemplos do Pandas e do NumPy, temos três objetos aqui devido às quebras de linha entre os parágrafos.

    4. Escrevendo Arquivos de Texto com o Pandas

    Provavelmente, a maneira mais fácil de escrever um arquivo de texto usando o Pandas é usando o método to_csv(). Veja como funciona!

    import pandas as pd
    
    nlp_wiki = pd.read_table("nlp_wiki.txt", header=None, delimiter=None)
    nlp_wiki.to_csv("nlp_wiki_pandas.txt", sep="\t", index=False)

    Lemos um arquivo de texto e depois o salvamos usando tabulação como separador, excluindo o índice de linhas.

    5. Recapitulando

    Esperamos que você tenha gostado deste tutorial! Para recapitular, aqui está o que cobrimos:

    • Importação de dados de texto com o Pandas e o NumPy em Python.
    • Escrita de arquivos de texto usando as funções nativas do Python e o Pandas.

    Com essas habilidades, você estará preparado para importar, manipular e analisar dados de texto em seus projetos de análise de dados usando Python.

    Outras Referências

    Manipulação de Strings em Python

    Tags:

    Leave a Reply

    Your email address will not be published. Required fields are marked *