#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. Я могу подтвердить, что версия редактирования работала и избегала пустых строк. Спасибо за вашу помощь!