Как удалить общие слова в абзаце, сформулированном с помощью python

Мне нужен способ удалить общие слова в приведенном выше содержимом веб-страницы. как интегрировать такой метод.

third_headers = ' '.join([r.text for r in soup.find_all('h3')]) third_headers

Я получил вывод - «Аналитика данных HTML и CSS Учебники по XML XML-учебники Программирование JavaScript на стороне сервера Веб-построение Аналитика данных XML-учебники HTML CSS JavaScript Программирование на стороне сервера XML Наборы символов Упражнения Викторины Курсы Сертификаты Пример примера Объяснение»

Нужен новый вывод без общих слов (удаленные общие слова из корпуса общих слов)

У вас есть такой корпус общеупотребительных слов? Если да, то какова его форма и тип?

re-za 19.03.2022 17:21

Нет, у меня нет такого корпуса. Я не знаю, как связать корпус, чтобы удалить общие слова, которые позже будут обработаны.

Jim jason 19.03.2022 17:23

Что именно вы подразумеваете под общими словами? Вы должны вывести результат, который вам не нужен. Как выглядит ожидаемый результат?

re-za 19.03.2022 17:25

Ожидаемый результат должен быть приведенным выше абзацем без общих слов. Общие слова могут быть ( и , если , да , нет и т. д.) из общего корпуса слов.

Jim jason 19.03.2022 17:26

Ну осталось только найти такой корпус. Остальное фильтрует

re-za 19.03.2022 17:30

Ваш вопрос, как найти такой корпус тогда? Если нет, если я могу предположить, что у нас есть корпус, скажем, в виде списка, я могу исправить ответ

re-za 19.03.2022 17:30

Предполагая, что корпус используется для фильтрации абзаца без общих слов, это то, что мне нужно. И как связать корпус, чтобы отфильтровать текст без общих слов.

Jim jason 19.03.2022 17:32

Я не уверен, что понимаю. Я добавлю свой ответ, посмотрим, нужно ли это вам.

re-za 19.03.2022 17:33

В принципе, чтобы удалить все общие слова из любого способа и отфильтровать необычные слова, будет достаточно.

Jim jason 19.03.2022 17:35
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
9
45
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Предположим, у нас есть корпус общих слов в списке под названием CORPUS:

raw = 'HTML and CSS Data Analytics XML Tutorials JavaScript Programming Server Side Web Building Data Analytics XML Tutorials HTML CSS JavaScript Programming Server Side XML Character Sets Exercises Quizzes Courses Certificates Example Example Explained'


CORPUS = ["And", "So", "If", "etc."]           # assumed to have
corpus = [w.lower() for w in CORPUS]           # to lowercase

words = raw.split()
processed = [w for w in words if w.lower() not in corpus]

print(processed)

Несколько предложений: я бы использовал raw.split() без каких-либо аргументов, которые также будут разделяться на новые строки и не будут давать вам пустые токены в случае последовательных пробелов. Эти «общие слова» в НЛП называются стоп-слова. Вы можете получить их, например, с помощью from nltk.corpus import stopwords; corpus = stopwords.words('english').

fsimonjetz 19.03.2022 18:10

Спасибо. Я обновился до raw.split(). Также полезно знать о nltk.corpus import stopwords

re-za 19.03.2022 18:12

Другие вопросы по теме