Как наиболее эффективный способ вычислять количество слов для 4M записей и список слов, содержащий 1 и 2 грамма?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как наиболее эффективный способ вычислять количество слов для 4M записей и список слов, содержащий 1 и 2 грамма?

Сообщение Anonymous »

Вот моя проблема. У меня очень большой файл с примерно 4 -метровыми рядами, где в каждом строке есть что -то вроде абзаца текста. Тогда у меня есть список слов с около 150 терминов, некоторые из них-1 грамма, а некоторые-2 грамма. Мне нужно сделать очень быструю функцию Python, чтобы получить количество слов в качестве DICTS для каждой строки данных. < /P>
Вот MRE, чтобы начать.import pandas as pd

# Sample data

# word_list has 1-grams and 2-grams
word_list = ['apple', 'banana', 'dog', 'machine learning', 'data science', 'big data']

# the real data has 4m rows
texts = 5000 * ['I love apple and banana', 'The dog runs fast', 'machine learning is great', 'apple banana dog', 'data science and big data are related']

# we have it in a df for now with a col called `text`
df = pd.DataFrame({'idx': range(len(texts)), 'text': texts})

# need some fast function to return a dict for each `text` that has word count
def count_words_in_texts(df, word_list):
"""
Return list of dicts with word counts for each row
df: DataFrame with 'text' column
word_list: list of words/phrases (1-grams and 2-grams)
Returns: list of dicts, one per row
"""
# TODO: Implement efficient word counting
pass

# Expected output format:
# [{'apple': 1, 'banana': 1, 'dog':0...}...]

results = count_words_in_texts(df, word_list)
print(results)


Подробнее здесь: https://stackoverflow.com/questions/796 ... and-a-word
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»