5

Shavkat

Новичок
Пользователь
Май 22, 2020
4
0
1
1590198317449.png

Моя операционная система: Windows 10, я использую (Anaconda)Jupyter notebook Python 3

Я испозовал эти коды:

import pandas as pd
import numpy as np
import string as st

text = "Съешь ещё этих мягких французских булок, да выпей же чаю."


def fn(text, n):

# уберём знаки пунктуации и переведём в строчный регистр:
new_text = text.translate(str.maketrans('', '', st.punctuation)).lower()

x = [new_text[i: i + n - 1] for i in range(len(new_text) - n + 2)]
xa = [new_text[i: i + n] for i in range(len(new_text) - n + 1)]


series_x = pd.Series(x)
series_xa = pd.Series(xa)

counts_x = series_x.value_counts()
counts_xa = series_xa.value_counts()

trimmed_xa = [key_xa[: - 1] for key_xa in counts_xa.keys()]

fn = - np.dot(counts_xa.values / len(xa), np.log2(counts_xa.values / counts_x[trimmed_xa].values))

return fn

Эти Коды не работают для исключения (if N == 0... elif N == 1...).
 
Последнее редактирование:

lightmanLP

Новичок
Пользователь
Май 23, 2020
18
1
3
Оформите код должным образом.
 
  • Мне нравится
Реакции: Vlad_SD

Shavkat

Новичок
Пользователь
Май 22, 2020
4
0
1
 

lightmanLP

Новичок
Пользователь
Май 23, 2020
18
1
3
Как это сделать?
Прочитайте закрепленный гайд в теме помощи.
 

Форум IT Специалистов