Как стать автором
Обновить

Комментарии 9

Спасибо, исправил.

Заголовок - интересный, тематика тоже завлекла... но... я до конца статьи ждал чего-то интересного, и не дождался...

Хотя бы привели сравнение 10, 100, и 1млн бросков, разные способы random и т.п.
А в итого вышло сухо и скучно, к сожалению =(

Спасибо большое за обратную связь. Приму к сведению. По поводу количества бросков не додумался. Будет над чем подумать в следующей статье)

Моя задача была просто запрограммировать содержимое первой главы книги. Посмотреть как оно получится или нет. По поводу сравнения 10, 100, и 1млн бросков задачи такой перед собой не ставил.

data =[ random.randint(1,10) for i in range(10)]

Так посимпатичней будет.

Спасибо большое за обратную связь!

Предложенная статья нацелена по большей части для тех людей, которые являются как новичками в математике, так новичками в программировании. В вашем примере используется List comprehension. Когда я тренировался в программировании, не сразу понял её назначение. Начав исследование, увидел, что не все новички способны в этом вопросе разобраться, поэтому сложные конструкции не использовал.

А так да, [ random.randint(1,10) for i in range(10)] подобная конструкция смотрится симпатичней. Вы абсолютно правы!

Спасибо автору за статью конечно. Человек знакомится с программированием и тервером это похвально:) Книгу добавил себе в закладки. Пару рекомендаций насчёт кода.

  1. Объект DataFrame, состоит из объектов Series, сильно напоминающих numpy.array. Вам необходимо ознакомится с numpy.array так как он поддерживает математические операции, вам не нужно итерироватся по вашей колонке «частота», потом пихать это в массив и потом делать новую колонку в датафрейме:

df[“вероятность”] = df[“частота”] / df[“частота”].sum()

Это дало бы вам тот же результат:)

  1. Неправильно говорить про «добавить в конец словаря» словарь это Объект где нет конца или начала, там есть ключи и значения. Для упорядоченного словаря есть специальный объект называется OrderDict. И опять же вы могли упорядочить свои значения уже в датафрейме. Есть метод .sort_values(). df[“частота”].sort_values() :) В общем больше почитайте про датафреймы это невероятно функциональная вещь.

  2. Функция count_rate имеет два цикла абсолютно излишне. Сделайте 1 цикл от 1 до 7, если значение есть в вашем словаре то добавляете сколько их в вашем массиве, если нет то напротив значения ставите 0 :)) Вы перемудрили и сделали простейшую функцию излишне сложной для понимания и демонстрируете бэд практис. :) Вы учитесь это нормально, но на будущее изучите zen of python и PEP прочитайте там много полезной инфы.

Большое спасибо за обратную связь)

Ваш комментарий учту, буду учиться дальше)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории