Сортировка данных из текстового файла по столбцам с помощью python

#python #dataframe #text #keyword

#python #dataframe #текст #ключевое слово

Вопрос:

Я использую Python, у меня есть один текстовый файл, содержащий данные, организованные следующим образом:

 acertainfilepathendingwith.txt T anumber Keywordcategory notimportantnumber anothernotimportantnumber asentencewithrelevantinformation
  

Пример:

 C:Test.txt T5 Plane 2848 3102 An apple a day keeps the doctor away.
  

Я хотел бы создать фрейм данных, выглядящий следующим образом:

 acertainfilepathendingwith.txt|Keywordcategory|asentencewithrelevantinformation
  

Итак, для моего примера:

 C:Test.txt|Plane|An apple a day keeps the doctor away.
  

Проблема в том, что я не могу различить каждый потенциальный столбец, потому что между ними есть только один пробел, а в «asentencewithrelevantinformation» также есть пробелы.

Итак, я подумал о вводе всех ключевых слов из Keywordcategory, чтобы эта часть была выполнима. Но как мне поступить с «отправкой соответствующей информации»?

Спасибо

Комментарии:

1. Если вы можете идентифицировать все, кроме предложения, просто уберите все после материала, который вы можете идентифицировать как предложение.

2. Я понимаю, что вы имеете в виду, я попробую, спасибо

Ответ №1:

Попробуйте что-то вроде этого:

 with open("test.txt", "r") as f:
    for line in f:
        a = line.split()      
        out = a[0] '|' a[2] '|'                
        for x in a:
            if a.index(x) > 4:
                out  = x ' '
        print(out)
        a.clear()
  

Редактировать:

 with open("test.txt", "r") as f:
    for line in f:
        if line == 'n':
            pass
        else:
            a = line.split()      
            out = a[0] '|' a[2] '|'                
            for x in a:
                if a.index(x) > 4:
                    out  = x ' '
            print(out)
            a.clear()
  

Комментарии:

1. Ваш код работает хорошо. При запуске у меня возникла ошибка индексирования, но это потому, что у меня есть пустая строка между каждой соответствующей строкой. Я пытаюсь исправить это прямо сейчас.

2. Я могу подтвердить, что версия редактирования работала и избегала пустых строк. Спасибо за вашу помощь!