Как отобразить наиболее часто встречающиеся слова в pandas?

Как извлечь из столбца датафрейма в Пандас теги в формате "white;old;bmw" и составить список самых часто и редко встречающихся тегов?
  • 3 апреля 2024 г. 11:20
Ответы на вопрос 2
Для отображения наиболее часто встречающихся слов в столбце датафрейма в pandas можно использовать следующий код:

```python
import pandas as pd
from collections import Counter

# Создаем датафрейм
data = {'text': ['white;old;bmw','black;new;audi','white;new;bmw','blue;old;audi']}
df = pd.DataFrame(data)

# Разбиваем строку на слова и подсчитываем их количество
words = df['text'].str.split(';').explode()
word_counts = Counter(words)

# Выводим наиболее часто встречающиеся слова
most_common_words = word_counts.most_common()
print(most_common_words)
```

Для извлечения тегов в формате "white;old;bmw" из столбца датафрейма, а затем составления списка самых часто и редко встречающихся тегов можно использовать следующий код:

```python
import pandas as pd
from collections import Counter

# Создаем датафрейм
data = {'tags': ['white;old;bmw','black;new;audi','white;new;bmw','blue;old;audi']}
df = pd.DataFrame(data)

# Разбиваем теги на отдельные слова
tags = df['tags'].str.split(';').explode()

# Подсчитываем количество упоминаний каждого тега
tag_counts = Counter(tags)

# Выводим самые часто встречающиеся и редко встречающиеся теги
most_common_tags = tag_counts.most_common(5)
least_common_tags = tag_counts.most_common()[:-6:-1]

print('Самые часто встречающиеся теги:')
print(most_common_tags)

print('\nСамые редко встречающиеся теги:')
print(least_common_tags)
``` 

Этот код разбивает строку с тегами на отдельные теги, подсчитывает их количество с помощью Counter и выводит список самых часто и редко встречающихся тегов.
был подобный проект <br/> <br/> import pandas as pd <br/> from collections import Counter <br/> <br/> # Загрузите свои данные <br/> df = pd.read_excel('oba.xlsx') <br/> <br/> # Извлеките навыки из столбца "описание вакансии" <br/> skills = df['Описание вакансии'].str.split(';').sum() <br/> <br/> # Подсчитайте частоту каждого навыка <br/> counter = Counter(skills) <br/> <br/> # Получите 10 самых востребованных навыков <br/> most_demanded_skills = counter.most_common(10) <br/> <br/> # Получите 10 самых невостребованных навыков <br/> least_demanded_skills = counter.most_common()[:-11:-1]
Похожие вопросы