Автор оригинала: Chris.
Проблема разработки: Как построить доверительный интервал в Python?
Построить заполненный интервал с шириной CI
и интервальные границы от Y-CI
к Y + CI.
вокруг функциональных значений y
Используйте plt.fill_between (x, (y-ci), (y + ci) ,,1)
Функция вызов на Матплотлиб PLT
модуль.
- Первый аргумент
х
Определяетх
значения заполненной кривой. Вы можете использовать те же значения, что и для оригинального сюжета. - Второй аргумент
Y-CI
Определяет нижнюю интервальную границу. - Третий аргумент
y + ci
Определяет верхнюю интервальную границу. - Четвертый аргумент
Color = 'Blue'
Определяет цвет затененного интервала. - Пятый аргумент
alpha = 0,1
Определяет прозрачность, чтобы обеспечить слоистые интервалы.
from matplotlib import pyplot as plt import numpy as np # Create the data set x = np.arange(0, 10, 0.05) y = np.sin(x) Define the confidence interval ci = 0.1 * np.std(y) / np.mean(y) # Plot the sinus function plt.plot(x, y) # Plot the confidence interval plt.fill_between(x, (y-ci), (y+ci), color='blue', alpha=0.1) plt.show()
Вы также можете построить два слоистых доверительных интервалах, позвонив plt.fill_between ()
Функция дважды с различными интервальными границами:
from matplotlib import pyplot as plt import numpy as np # Create the data set x = np.arange(0, 10, 0.05) y = np.sin(x) # Define the confidence interval ci = 0.1 * np.std(y) / np.mean(y) # Plot the sinus function plt.plot(x, y) # Plot the confidence interval plt.fill_between(x, (y-ci), (y+ci), color='blue', alpha=0.1) plt.fill_between(x, (y-2*ci), (y+2*ci), color='yellow', alpha=.1) plt.show()
Полученный участок показывает два доверительных интервала в синем и желтом:
Вы можете запустить это в нашей интерактивной ноутбуке Jupyter:
Вы также можете использовать функцию regplot () regplot (), которая делает это для вас, учитывая рассеянный набор данных (X, Y) кортежей.
import numpy as np import seaborn as sns import matplotlib.pyplot as plt #create some random data x = np.random.randint(1, 10, 20) y = x + np.random.normal(0, 1, 20) #create regplot ax = sns.regplot(x, y)
Это приводит к удобному выпуску:
Обратите внимание, что доверительный интервал 95% рассчитывается автоматически. Альтернативный третий аргумент CI в sns.regplot (x, y,)
Позволяет определить другой доверительный интервал (например, 80%).
Чтобы повысить свои навыки в Python, Matplotlib и науке о данных, присоединяйтесь к нашей бесплатной электронной почте и загрузите свой Python Cheat State!
Ресурсы :
- https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.fill_between.html
- https://stackoverflow.com/questions/59747313/how-to-plot-confidence-interval-in-python
- https://www.statology.org/plot-confidence-interval-python/
Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.
Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.
Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.
Оригинал: “https://blog.finxter.com/how-to-plot-the-confidence-interval-in-python/”