def test_lemma_mass():
    res = german_lemmatizer.lemmatize(
        ["Johannes war einer von vielen guten Schülern."] * 1000,
        chunk_size=400,
        n_jobs=2,
    )
    assert list(res) == ["Johannes sein einer von vielen gut Schüler."] * 1000
def preprocess(texts, n_jobs=None, remove_stop=True):
    if n_jobs is None:
        n_jobs = os.cpu_count()

    texts = Parallel(n_jobs=n_jobs)(delayed(first_clean)(row)
                                    for row in tqdm(texts))
    texts = lemmatize(texts, n_jobs=n_jobs, remove_stop=remove_stop)
    texts = Parallel(n_jobs=n_jobs)(delayed(second_clean)(row)
                                    for row in tqdm(texts))
    return texts
def test_lemma_escape():
    res = german_lemmatizer.lemmatize(
        [
            "Johannes war einer von vielen guten Schülern.",
            """Peter war ein


        Idiot.""",
        ],
        escape=True,
    )
    assert list(res) == [
        "Johannes sein einer von vielen gut Schüler.",
        """Peter sein ein


        Idiot.""",
    ]
Beispiel #4
0
import dateparser

from bs4 import BeautifulSoup

import pandas as pd
import swifter

import pandas as pd
import sqlite3
from cleantext import clean

from pathlib import Path
import numpy as np
import swifter
from somajo import Tokenizer, SentenceSplitter
from tqdm import tqdm
import multiprocessing
from joblib import Parallel, delayed

from german_lemmatizer import lemmatize

num_cores = multiprocessing.cpu_count()

import numpy as np

sents = pickle.load(open("s.pkl", "rb"))

slem_txt = list(lemmatize(sents, n_jobs=4, chunk_size=50000))

pickle.dump(slem_txt, open("s_l.pkl", "wb"))
def test_lemma():
    res = german_lemmatizer.lemmatize(
        ["Johannes war einer von vielen guten Schülern."])
    assert list(res) == ["Johannes sein einer von vielen gut Schüler."]
def test_lemma_stop():
    res = german_lemmatizer.lemmatize(
        ["Johannes war einer von vielen guten Schülern."], remove_stop=True)
    assert list(res) == ["Johannes gut Schüler."]
Beispiel #7
0
# In[2]:


df = pd.read_pickle('/mnt/data2/ptf/cleaned.pkl')


# In[3]:


df = df.drop(columns=['cleaned'])


# In[ ]:


slem_txt = list(lemmatize(df['text'].values[0:], n_jobs=3, chunk_size=10000))


# In[ ]:


pickle.dump( slem_txt, open( "lemma.pkl", "wb" ) )


# In[ ]:


def get_sents(texts):
    tokenizer = Tokenizer(split_camel_case=True, token_classes=False, extra_info=False)
    sentence_splitter = SentenceSplitter(is_tuple=False)