Как найти среднее число в pandas
Перейти к содержимому

Как найти среднее число в pandas

Метод mean() в Python

Среднее – это значение, представляющее весь набор объектов. Считается центральным значением набора чисел.

Среднее значение рассчитывается путем деления суммы всех значений объектов на количество объектов.

Формула: (сумма значений) / общие значения

Теперь давайте разберемся, как работает функция mean() для вычисления среднего значения.

Использование функции mean()

Функция mean() помогает вычислить среднее значение набора значений, переданных в функцию.

Модуль статистики в Python используется для выполнения всех статистических операций с данными. Нам нужно импортировать модуль статистики, используя следующую команду:

Функция statistics.mean() принимает значения данных в качестве аргумента и возвращает среднее значение переданных ей значений.

mean() с модулем NumPy

Модуль Python NumPy представляет набор значений в виде массива. Мы можем вычислить среднее значение этих элементов массива с помощью функции numpy.mean().

Функция numpy.mean() работает так же, как функция statistics.mean().

В приведенном выше примере мы использовали функцию numpy.arange (start, stop) для создания равномерно распределенных значений в диапазоне, указанном в качестве параметров. Кроме того, функция numpy.mean() используется для вычисления среднего значения всех элементов массива.

Функция mean() с модулем Pandas

Модуль Pandas работает с огромными наборами данных в виде DataFrames. Среднее значение этих огромных наборов данных можно вычислить с помощью функции pandas.DataFrame.mean().

Функция pandas.DataFrame.mean() возвращает среднее значение этих значений данных.

В приведенном выше примере мы создали массив NumPy с помощью функции numpy.arange(), а затем преобразовали значения массива в DataFrame с помощью функции pandas.DataFrame(). Кроме того, мы вычислили среднее значение значений DataFrame с помощью функции pandas.DataFrame.mean().

Входной набор данных:

Набор данных MTCARS

В приведенном выше примере мы использовали вышеупомянутый набор данных и вычислили среднее значение всех значений данных, представленных в столбце данных «qsec».

Вычисление среднего, медианы и моды в Python

Когда мы пытаемся описать и обобщить выборку данных, мы, вероятно, начинаем с нахождения среднего (или среднего), медианы и режима данных. Это основные меры тенденций, которые часто являются нашим первым взглядом на набор данных.

В этом руководстве мы узнаем, как найти или вычислить среднее значение, медиану и режим в Python. Сначала мы закодируем функцию Python для каждой меры, а затем воспользуемся statistics Python для выполнения той же задачи.

Обладая этими знаниями, мы сможем быстро взглянуть на наши наборы данных и получить представление об общей тенденции данных.

Оглавление

Расчет среднего значения выборки

Если у нас есть выборка числовых значений, то ее среднее или среднее

  • это общая сумма значений (или наблюдений), деленная на количество значений.

Допустим, у нас есть образец [4, 8, 6, 5, 3, 2, 8, 9, 2, 5] . Мы можем вычислить его среднее значение, выполнив операцию:

(4 + 8 + 6 + 5 + 3 + 2 + 8 + 9 + 2 + 5) / 10 = 5,2

Среднее арифметическое — это общее описание наших данных. Предположим, вы купили 10 фунтов помидоров. Если пересчитать дома помидоры, получится 25 помидоров. В этом случае вы можете сказать, что средний вес помидора составляет 0,4 фунта. Это было бы хорошее описание ваших помидоров.

Среднее также может быть плохим описанием выборки данных. Допустим, вы анализируете группу собак. Если вы возьмете совокупный вес всех собак и разделите его на количество собак, то это, вероятно, будет плохим описанием веса отдельной собаки, поскольку разные породы собак могут иметь очень разные размеры и вес.

Насколько хорошо или плохо среднее значение описывает выборку, зависит от того, насколько разбросаны данные. В случае помидоров, они почти одинакового веса, и среднее значение является хорошим их описанием. В случае с собаками нет актуальных собак. Они могут варьироваться от крошечного чихуахуа до гигантского немецкого мастифа. Итак, среднее само по себе в данном случае не очень хорошее описание.

Теперь пора приступить к делу и узнать, как вычислить среднее значение с помощью Python.

Расчет среднего с помощью Python

Чтобы вычислить среднее значение выборки числовых данных, мы будем использовать две встроенные функции Python. Один для вычисления общей суммы значений, а другой для вычисления длины выборки.

Первая функция — это sum() . Эта встроенная функция принимает итерацию числовых значений и возвращает их общую сумму.

Вторая функция — len() . Эта встроенная функция возвращает длину объекта. len() может принимать в качестве аргумента последовательности (строка, байты, кортеж, список или диапазон) или коллекции (словарь, набор или замороженный набор).

Вот как мы можем вычислить среднее значение:

Сначала мы суммируем значения в sample используя sum() . Затем мы делим эту сумму на длину sample , которая является результирующим значением len(sample) .

Использование Python mean ()

Поскольку вычисление среднего — это обычная операция, Python включает эту функцию в модуль statistics Он предоставляет некоторые функции для расчета базовой статистики по наборам данных. Функция statistics.mean() берет образец числовых данных (любых итерируемых) и возвращает их среднее значение.

Вот как работает функция mean() Python:

Нам просто нужно импортировать statistics а затем вызвать mean() с нашим образцом в качестве аргумента. Это вернет среднее значение выборки. Это быстрый способ найти среднее значение с помощью Python.

Нахождение медианы выборки

Медиана выборки числовых данных — это значение, которое находится посередине при сортировке данных. Данные могут быть отсортированы по возрастанию или убыванию, медиана остается прежней.

Чтобы найти медиану, нам необходимо:

    образец
  1. Найдите значение в середине отсортированного образца

При нахождении числа в центре отсортированной выборки мы можем столкнуться с двумя типами ситуаций:

  1. Если в выборке есть нечетное количество наблюдений , то среднее значение в отсортированной выборке — это медиана.
  2. Если в выборке есть четное количество наблюдений , нам нужно вычислить среднее из двух средних значений в отсортированной выборке.

Если у нас есть выборка [3, 5, 1, 4, 2] и мы хотим найти ее медиану, то сначала мы сортируем выборку по [1, 2, 3, 4, 5] . Медиана будет равна 3 поскольку это значение посередине.

С другой стороны, если у нас есть выборка [1, 2, 3, 4, 5, 6] , то ее медиана будет (3 + 4) / 2 = 3.5 .

Давайте посмотрим, как мы можем использовать Python для вычисления медианы.

Поиск медианы с помощью Python

Чтобы найти медиану, нам сначала нужно отсортировать значения в нашей выборке . Этого можно добиться с помощью встроенной функции sorted() sorted() принимает итерацию и возвращает отсортированный list содержащий те же значения, что и исходная итерация.

Второй шаг — найти значение, которое находится в середине отсортированной выборки. Чтобы найти это значение в выборке с нечетным количеством наблюдений, мы можем разделить количество наблюдений на 2. Результатом будет индекс значения в середине отсортированной выборки.

Поскольку оператор деления ( / ) возвращает число с плавающей запятой, нам нужно использовать оператор деления этажа ( // ), чтобы получить целое число. Итак, мы можем использовать его как индекс в операции индексации ( [] ).

Если в выборке есть четное количество наблюдений, нам нужно найти два средних значения. Скажем, у нас есть образец [1, 2, 3, 4, 5, 6] . Если мы разделим его длину ( 6 ) на 2 с помощью деления пола, то получим 3 . Это индекс нашего верхнего среднего значения ( 4 ). Чтобы найти индекс нашего нижнего среднего значения ( 3 ), мы можем уменьшить индекс верхнего среднего значения на 1 .

Давайте объединим все это в функцию, которая вычисляет медиану выборки. Вот возможная реализация:

Эта функция берет образец числовых значений и возвращает их медиану. Сначала мы находим длину образца n . Затем мы вычисляем индекс среднего значения (или верхнего среднего значения) путем деления n на 2 .

Оператор if проверяет, есть ли в имеющейся выборке нечетное количество наблюдений. Если да, то медиана — это значение index .

Окончательный return выполняется, если в выборке есть четное количество наблюдений. В этом случае мы находим медиану, вычисляя среднее из двух средних значений.

Обратите внимание, что операция нарезки [index — 1:index + 1] получает два значения. Значение в index — 1 и значение в index поскольку операции нарезки исключают значение в конечном индексе ( index + 1 ).

Использование медианы Python ()

Функция Python statistics.median() берет выборку данных и возвращает ее медиану. Вот как работает метод:

Обратите внимание, что median() автоматически обрабатывает вычисление медианы для выборок с нечетным или четным числом наблюдений.

Поиск режима образца

Режим — это наиболее частое наблюдение (или наблюдения) в выборке. Если у нас есть образец [4, 1, 2, 2, 3, 5] , то его режим равен 2 потому что 2 появляется в образце два раза, тогда как другие элементы появляются только один раз.

Режим не обязательно должен быть уникальным. Некоторые образцы имеют более одного режима. Скажем, у нас есть образец [4, 1, 2, 2, 3, 5, 4] . В этом примере есть два режима — 2 и 4 потому что эти значения появляются чаще и оба появляются одинаковое количество раз.

Этот режим обычно используется для категориальных данных. Распространенными категориальными типами данных являются:

  • логическое значение — может принимать только два значения, например true или false , male или female
  • номинальный — может принимать более двух значений, например, American — European — Asian — African
  • порядковый — может принимать более двух значений, но значения имеют логический порядок, например, few — some — many

Когда мы анализируем набор категориальных данных, мы можем использовать этот режим, чтобы узнать, какая категория является наиболее распространенной в наших данных.

Мы можем найти образцы, у которых нет режима. Если все наблюдения уникальны (нет повторяющихся наблюдений), то в вашей выборке не будет режима.

Теперь, когда мы знаем основы режима, давайте посмотрим, как его найти с помощью Python.

Поиск режима с помощью Python

Чтобы найти режим с помощью Python, мы начнем с подсчета количества вхождений каждого значения в рассматриваемом примере. Затем мы получим значения с большим количеством вхождений.

Поскольку подсчет объектов — обычная операция, Python предоставляет класс collections.Counter Этот класс специально разработан для подсчета предметов.

Класс Counter предоставляет метод, определенный как .most_common([n]) . Этот метод возвращает list кортежей из двух элементов с n более общими элементами и их соответствующими счетчиками. Если n опущено или None , то .most_common() возвращает все элементы.

Давайте воспользуемся Counter и .most_common() чтобы закодировать функцию, которая берет образец данных и возвращает свой режим.

Вот возможная реализация:

Сначала мы подсчитываем наблюдения в sample с помощью объекта Counter c ). Затем мы используем составление списка, чтобы создать list содержащий наблюдения, которые встречаются в выборке одинаковое количество раз.

Поскольку .most_common(1) возвращает list с одним tuple формы (observation, count) , нам нужно получить наблюдение с индексом 0 в list а затем элемент с индексом 1 во вложенном tuple . Это можно сделать с помощью выражения c.most_common(1)[0][1] . Это значение является первым режимом нашего образца.

Обратите внимание, что условие понимания сравнивает счетчик каждого наблюдения ( v ) со счетчиком наиболее распространенного наблюдения ( c.most_common(1)[0][1] ). Это позволит нам получить несколько наблюдений ( k ) с одним и тем же подсчетом в случае многомодовой выборки.

Использование режима Python ()

Python statistics.mode() принимает некоторые data и возвращает свой (первый) режим. Посмотрим, как это можно использовать:

В одномодовом примере функция Python mode() возвращает наиболее распространенное значение 2 . Однако в следующих двух примерах он вернул 4 и few . В этих образцах были другие элементы, встречающиеся такое же количество раз, но они не были включены.

Начиная с Python 3.8 мы также можем использовать statistics.multimode() который принимает итерацию и возвращает list режимов.

Вот пример использования multimode() :

Примечание . Функция всегда возвращает list , даже если вы передаете одномодовый образец.

Заключение

Среднее (или среднее), медиана и мода обычно являются нашим первым взглядом на выборку данных, когда мы пытаемся понять центральную тенденцию данных.

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

Python, исследование данных и выборы: часть 2

Пост №2 для начинающих посвящен описательным статистикам, группированию данных и нормальному распределению. Все эти сведения заложат основу для дальнейшего анализа электоральных данных. Предыдущий пост см. здесь.

Описательные статистики

Описательные статистические величины, или статистики, — это числа, которые используются для обобщения и описания данных. В целях демонстрации того, что мы имеем в виду, посмотрим на столбец с данными об электорате Electorate. Он показывает суммарное число зарегистрированных избирателей в каждом избирательном округе:

Мы уже очистили столбец, отфильтровав пустые значения ( nan ) из набора данных, и поэтому предыдущий пример должен вернуть суммарное число избирательных округов.

Описательные статистики, так называемые сводные статистики, представляют собой разные подходы к измерению свойств последовательностей чисел. Они помогают охарактеризовать последовательность и способны выступать в качестве ориентира для дальнейшего анализа. Начнем с двух самых базовых статистик, которые мы можем вычислить из последовательности чисел — ее среднее значение и дисперсию (варианс).

Среднее значение

Наиболее распространенный способ усреднить набор данных — взять его среднее значение. Среднее значение на самом деле представляет собой один из нескольких способов измерения центра распределения данных.

Среднее значение числового ряда вычисляется на Python следующим образом:

Мы можем воспользоваться нашей новой функцией mean для вычисления среднего числа избирателей в Великобритании:

На самом деле, библиотека pandas уже содержит функцию mean, которая гораздо эффективнее вычисляет среднее значение последовательности. В нашем случае ее можно применить следующим образом:

Медиана

Медиана — это еще одна распространенная описательная статистика для измерения центра распределения последовательности. Если Вы упорядочили все данные от меньшего до наибольшего, то медиана — это значение, которое находится ровно по середине. Если в последовательности число точек данных четное, то медиана определяется, как полусумма двух срединных значений.

Медианное значение электората Великобритании составляет:

Библиотека pandas тоже располагает встроенной функцией для вычисления медианного значения, которая так и называется median .

Дисперсия

Среднее арифметическое и медиана являются двумя альтернативными способами описания среднего значения последовательности, но сами по себе они мало что говорят о содержащихся в ней значениях. Например, если известно, что среднее последовательности из девяноста девяти значений равно 50, то мы почти ничего не скажем о том, какого рода значения последовательность содержит.

Она может содержать целые числа от одного до девяноста девяти либо сорок девять нулей и пятьдесят девяносто девяток, а может быть и так, что она девяносто восемь раз содержит отрицательную единицу и одно число 5048, или же вообще все значения могут быть равны 50.

Дисперсия (варианс) последовательности чисел показывает «разброс» данных вокруг среднего значения. К примеру, данные, приведенные выше, имели бы разную дисперсию. На языке математики дисперсия обозначается следующим образом:

где s 2 — это математический символ, который часто используют для обозначения дисперсии.

Для вычисления квадрата выражения используется оператор языка Python возведения в степень ** .

Стандартное отклонение

Поскольку мы взяли средний квадрат отклонения, т.е. получили квадрат отклонения и затем его среднее, то единицы измерения дисперсии (варианса) тоже будут в квадрате, т.е. дисперсия электората Великобритании будет измеряться «людьми в квадрате». Несколько неестественно рассуждать об избирателях в таком виде. Единицу измерения можно привести к более естественному виду, снова обозначающему «людей», путем извлечения квадратного корня из дисперсии (варианса). В результате получим так называемое стандартное отклонение, или среднеквадратичное отклонение:

В библиотеке pandas функции для вычисления дисперсии (варианса) и стандартного отклонения имплементированы соответственно, как var и std . При этом последняя по умолчанию вычисляет несмещенное значение, поэтому, чтобы получить тот же самый результат, нужно применить именованный аргумент ddof=0 , который сообщает, что требуется вычислить смещенное значение стандартного отклонения:

Квантили

Медиана представляет собой один из способов вычислить срединное значение из списка, т.е. находящееся ровно по середине, дисперсия же предоставляет способ измерить разброс данных вокруг среднего значения. Если весь разброс данных представить на шкале от 0 до 1, то значение 0.5 будет медианным.

Для примера рассмотрим следующую ниже последовательность чисел:

Отсортированная последовательность состоит из семи чисел, поэтому медианой является число 21 четвертое в ряду. Его также называют 0.5-квантилем. Мы можем получить более полную картину последовательности чисел, взглянув на 0.0 (нулевой), 0.25, 0.5, 0.75 и 1.0 квантили. Все вместе эти цифры не только показывают медиану, но также обобщают диапазон данных и сообщат о характере распределения чисел внутри него. Они иногда упоминаются в связи с пятичисловой сводкой.

Один из способов составления пятичисловой сводки для данных об электорате Великобритании показан ниже. Квантили можно вычислить непосредственно в pandas при помощи функции quantile . Последовательность требующихся квантилей передается в виде списка.

Когда квантили делят диапазон на четыре равных диапазона, как показано выше, то они называются квартилями. Разница между нижним (0.25) и верхним (0.75) квартилями называется межквартильным размахом, или иногда сокращенно МКР. Аналогично дисперсии (варианса) вокруг среднего значения, межквартильный размах измеряет разброс данных вокруг медианы.

Группирование данных в корзины

В целях развития интуитивного понимания в отношении того, что именно все эти расчеты разброса значений измеряют, мы можем применить метод под названием группировка в частотные корзины (binning). Когда данные имеют непрерывный характер, использование специального словаря для подсчета частот Counter (подобно тому, как он использовался при подсчете количества пустых значений в наборе данных об электорате) становится нецелесообразным, поскольку никакие два значения не могут быть одинаковыми. Между тем, общее представление о структуре данных можно все-равно получить, сгруппировав для этого данные в частотные корзины (bins).

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

На приведенном выше рисунке показано 15 значений x, разбитых на 5 равноразмерных корзин. Подсчитав количество точек, попадающих в каждую корзину, мы можем четко увидеть, что большинство точек попадают в корзину по середине, а меньшинство — в корзины по краям. Следующая ниже функция Python nbin позволяет добиться того же самого результата:

Например, мы можем разбить диапазон 0-14 на 5 корзин следующим образом:

После того, как мы разбили значения на корзины, мы можем в очередной раз воспользоваться словарем Counter , чтобы подсчитать количество точек в каждой корзине. В следующем ниже примере мы воспользуемся этим словарем для разбиения данных об электорате Великобритании на пять корзин:

Количество точек в крайних корзинах (0 и 4) значительно ниже, чем в корзинах в середине — количества, судя по всему, растут по направлению к медиане, а затем снова снижаются. В следующем разделе мы займемся визуализацией формы этих количеств.

Гистограммы

Гистограмма — это один из способов визуализации распределения одной последовательности значений. Гистограммы попросту берут непрерывное распределение, разбивают его на корзины, и изображают частоты точек, попадающих в каждую корзину, в виде столбцов. Высота каждого столбца гистограммы показывает количество точек данных, которые содержатся в этой корзине.

Мы уже увидели, каким образом можно выполнить разбиение данных на корзины самостоятельно, однако в библиотеке pandas уже содержится функция hist , которая разбивает данные и визуализирует их в виде гистограммы.

Приведенный выше пример сгенерирует следующий ниже график:

Число корзин, на которые данные разбиваются, можно сконфигурировать, передав в функцию при построении гистограммы именованный аргумент bins :

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

При выборе количества корзин для представления данных следует найти точку равновесия — с малым количеством корзин форма данных будет представлена лишь приблизительно, а слишком большое их число приведет к тому, что шумовые признаки могут заслонить лежащую в основании структуру.

Ниже показана гистограмма теперь уже из 20 корзин:

Окончательный график, состоящий из 20 корзин, судя по всему, пока лучше всего представляет эти данные.

Наряду со средним значением и медианой, есть еще один способ измерить среднюю величину последовательности. Это мода. Мода — это значение, встречающееся в последовательности наиболее часто. Она определена исключительно только для последовательностей, имеющих по меньшей мере одно дублирующее значение; во многих статистических распределениях это не так, и поэтому для них мода не определена. Тем не менее, пик гистограммы часто называют модой, поскольку он соответствует наиболее распространенной корзине.

Из графика ясно видно, что распределение вполне симметрично относительно моды, и его значения резко падают по обе стороны от нее вдоль тонких хвостов. Эти данные приближенно подчиняются нормальному распределению.

Нормальное распределение

Гистограмма дает приблизительное представление о том, каким образом данные распределены по всему диапазону, и является визуальным средством, которое позволяет квалифицировать данные как относящиеся к одному из немногих популярных распределений. В анализе данных многие распределения встречаются часто, но ни одно не встречается также часто, как нормальное распределение, именуемое также гауссовым распределением.

Распределение названо нормальным распределением из-за того, что оно очень часто встречается в природе. Галилей заметил, что ошибки в его астрономических измерениях подчинялись распределению, где малые отклонения от среднего значения встречались чаще, чем большие. Вклад великого математика Гаусса в описание математической формы этих ошибок привел к тому, что это распределение стали называть в его честь распределением Гаусса.

Любое распределение похоже на алгоритм сжатия: оно позволяет очень эффективно резюмировать потенциально большой объем данных. Нормальное распределение требует только два параметра, исходя из которых можно аппроксимировать остальные данные. Это среднее значение и стандартное отклонение.

Центральная предельная теорема

Высокая встречаемость нормального распределения отчасти объясняется центральной предельной теоремой. Дело в том, что значения, полученные из разнообразных статистических распределений, при определенных обстоятельствах имеют тенденцию сходиться к нормальному распределению, и мы это покажем далее.

В программировании типичным распределением является равномерное распределение. Оно представлено распределением чисел, генерируемых функцией библиотеки scipy stats.uniform.rvs : в справедливом генераторе случайных чисел все числа имеют равные шансы быть сгенерированными. Мы можем увидеть это на гистограмме, многократно генерируя серию случайных чисел между 0 и 1 и затем построив график с результатами.

Обратите внимание, что в этом примере мы впервые использовали тип Series библиотеки pandas для числового ряда данных.

Приведенный выше пример создаст следующую гистограмму:

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

Если напротив сгенерировать гистограмму средних значений последовательностей чисел, то в результате получится распределение, которое выглядит совсем непохоже.

Приведенный выше пример сгенерирует результат, аналогичный следующей ниже гистограмме:

Хотя величина среднего значения близкая к 0 или 1 не является невозможной, она является чрезвычайно невероятной и становится менее вероятной по мере роста числа усредненных чисел и числа выборочных средних. Фактически, на выходе получается результат очень близкий к нормальному распределению.

Этот результат, когда средний эффект множества мелких случайных колебаний в итоге приводит к нормальному распределению, называется центральной предельной теоремой, иногда сокращенно ЦПТ, и играет важную роль для объяснения, почему нормальное распределение встречается так часто в природных явлениях.

До 20-ого века самого термина еще не существовало, хотя этот эффект был зафиксирован еще в 1733 г. французским математиком Абрахамом де Mуавром, который использовал нормальное распределение, чтобы аппроксимировать число орлов в результате бросания уравновешенной монеты. Исход бросков монеты лучше всего моделировать при помощи биномиального распределения. В отличие от центральной предельной теоремы, которая позволяет получать выборки из приближенно нормального распределения, библиотека scipy содержит функции для эффективного генерирования выборок из самых разнообразных статистических распределений, включая нормальное:

Отметим, что в функции sp.random.normal параметр loc – это среднее значение, scale – дисперсия и size – размер выборки. Приведенный выше пример сгенерирует следующую гистограмму нормального распределения:

По умолчанию среднее значение и стандартное отклонение для получения нормального распределения равны соответственно 0 и 1.

Примеры исходного кода для этого поста находятся в моем репо на Github. Все исходные данные взяты в репозитории автора книги.

Следующая часть, часть 3, серии постов «Python, исследование данных и выборы» посвящена генерированию распределений, их свойствам, а также графикам для их сопоставительного анализа

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *