Эффективные методы преобразования данных текстового файла в DataFrame в Python без Pandas

Метод 1: использование модуля csv
Модуль csv в Python предоставляет функциональные возможности для чтения и записи файлов CSV. Мы можем использовать этот модуль для преобразования текстового файла в структуру, подобную DataFrame. Вот пример:

import csv
def text_to_dataframe(file_path):
    data = []
    with open(file_path, 'r') as file:
        reader = csv.reader(file)
        for row in reader:
            data.append(row)

    # Convert data into DataFrame-like structure
    headers = data[0]
    rows = data[1:]

    dataframe = {'headers': headers, 'rows': rows}
    return dataframe
# Usage
file_path = 'data.txt'
df = text_to_dataframe(file_path)

Метод 2: использование встроенной функции Split()
Если ваш текстовый файл имеет определенный разделитель, например запятую или табуляцию, вы можете использовать функцию Split() для разделения каждой строки на столбцы. Вот пример:

def text_to_dataframe(file_path, delimiter=','):
    data = []
    with open(file_path, 'r') as file:
        for line in file:
            row = line.strip().split(delimiter)
            data.append(row)

    # Convert data into DataFrame-like structure
    headers = data[0]
    rows = data[1:]

    dataframe = {'headers': headers, 'rows': rows}
    return dataframe
# Usage
file_path = 'data.txt'
df = text_to_dataframe(file_path, delimiter='\t')

Метод 3: использование библиотеки NumPy
NumPy — мощная библиотека для числовых вычислений на Python. Он предоставляет функцию под названием genfromtxt(), которая может эффективно загружать данные текстового файла в структурированный массив, который можно преобразовать в структуру, подобную DataFrame. Вот пример:

import numpy as np
def text_to_dataframe(file_path, delimiter=','):
    data = np.genfromtxt(file_path, delimiter=delimiter, dtype=None, names=True)

    # Convert data into DataFrame-like structure
    headers = data.dtype.names
    rows = data.tolist()

    dataframe = {'headers': headers, 'rows': rows}
    return dataframe
# Usage
file_path = 'data.txt'
df = text_to_dataframe(file_path, delimiter='\t')

В этой статье мы рассмотрели три эффективных метода преобразования данных текстового файла в структуру, подобную DataFrame, в Python без использования библиотеки pandas. Мы продемонстрировали, как это сделать, используя модуль csv, встроенную функцию Split() и библиотеку NumPy. Эти методы предоставляют альтернативы для эффективной обработки больших наборов данных. Используя эти методы, вы можете манипулировать и анализировать данные текстовых файлов без необходимости использования панд.