Наука за данните

Урок за Python Seaborn

Урок за Python Seaborn
В този урок за библиотеката на Python Seaborn ще разгледаме различни аспекти на тази библиотека за визуализация на данни, която можем да използваме с Python, за да генерираме красиви и интуитивни графики, които могат да визуализират данни във форма, която бизнесът иска от платформа. За да завършим този урок, ще разгледаме следните раздели:

Това изглежда много за покриване. Нека започнем сега.

Какво е библиотека на Python Seaborn?

Библиотеката на Seaborn е пакет на Python, който ни позволява да правим инфографики въз основа на статистически данни. Тъй като е направен върху matplotlib, той по своята същност е съвместим с него. Освен това, той поддържа структурата на данни на NumPy и Pandas, така че да може да се направи графика директно от тези колекции.

Визуализирането на сложни данни е едно от най-важните неща, за които Seaborn се грижи. Ако сравним Matplotlib с Seaborn, Seaborn може да улесни онези неща, които е трудно да се постигнат с Matplotlib. Важно е обаче да се отбележи, че Seaborn не е алтернатива на Matplotlib, а е допълнение към него. По време на този урок ще използваме функциите Matplotlib и в кодовите фрагменти. Ще изберете да работите с Seaborn в следните случаи на употреба:

Само забележка преди започване е, че използваме виртуална среда за този урок, който направихме със следната команда:

python -m virtualenv seaborn
източник seaborn / bin / активиране

След като виртуалната среда е активна, можем да инсталираме библиотеката на Seaborn във виртуалната среда, за да могат да бъдат изпълнени примери, които създаваме след това:

pip инсталирайте seaborn

Можете също да използвате Anaconda, за да стартирате тези примери, което е по-лесно. Ако искате да го инсталирате на вашата машина, погледнете урока, който описва „Как да инсталирате Anaconda Python на Ubuntu 18.04 LTS ”и споделете вашите отзиви. Сега нека преминем към различни видове сюжети, които могат да бъдат конструирани с Python Seaborn.

Използване на Pokemon Dataset

За да поддържаме този урок на практика, ще използваме набор от данни за Pokemon, който може да бъде изтеглен от Kaggle. За да импортираме този набор от данни в нашата програма, ще използваме библиотеката Pandas. Ето всички импорти, които извършваме в нашата програма:

импортирайте панди като pd
от matplotlib import pyplot като plt
внос seaborn като sns

Сега можем да импортираме набора от данни в нашата програма и да покажем някои от примерните данни с Pandas като:

df = pd.read_csv ('Покемон.csv ', index_col = 0)
df.глава()

Имайте предвид, че за да стартирате горния кодов фрагмент, CSV наборът от данни трябва да присъства в същата директория като самата програма. След като стартираме горния кодов фрагмент, ще видим следния изход (в бележника на Анаконда Юпитер):

Начертаване на крива на линейна регресия

Едно от най-хубавите неща на Seaborn са интелигентните функции за начертаване, които не само визуализират набора от данни, който му предоставяме, но и изграждат регресионни модели около него. Например, възможно е да се изгради график на линейна регресия с един ред код. Ето как да направите това:

sns.lmplot (x = 'Attack', y = 'Defense', data = df)

След като стартираме горния кодов фрагмент, ще видим следния изход:

Забелязахме няколко важни неща в горния кодов фрагмент:

Не се страхувайте, ако сте мислили, че не можем да имаме заговор без тази регресивна линия. Ние можем ! Нека опитаме нов кодов фрагмент сега, подобен на последния:

sns.lmplot (x = 'Attack', y = 'Defense', data = df, fit_reg = False)

Този път няма да видим линията на регресия в нашия сюжет:

Сега това е много по-ясно (ако нямаме нужда от линейната регресионна линия). Но това още не е приключило. Seaborn ни позволява да направим различен този сюжет и това ще правим.

Изграждане на парцели

Една от най-големите характеристики на Seaborn е как той лесно приема структурата на Pandas Dataframes, за да начертае данни. Можем просто да предадем Dataframe на библиотеката на Seaborn, така че да може да изгради от него кутия:

sns.boxplot (данни = df)

След като стартираме горния кодов фрагмент, ще видим следния изход:

Можем да премахнем първото четене на total, тъй като това изглежда малко неудобно, когато всъщност начертаваме отделни колони тук:

stats_df = df.капка (['Общо'], ос = 1)
# Нов парцел с помощта на stats_df
sns.boxplot (данни = stats_df)

След като стартираме горния кодов фрагмент, ще видим следния изход:

Парцел за рояк с Seaborn

Можем да изградим интуитивен дизайн Swarm сюжет с Seaborn. Отново ще използваме рамката за данни от Pandas, която заредихме по-рано, но този път ще извикаме функцията show на Matplotlib, за да покажем графика, който направихме. Ето кодовия фрагмент:

sns.set_context ("хартия")
sns.swarmplot (x = "Attack", y = "Defense", data = df)
plt.покажи ()

След като стартираме горния кодов фрагмент, ще видим следния изход:

Използвайки контекст на Seaborn, ние позволяваме на Seaborn да добави личен щрих и плавен дизайн към сюжета. Възможно е този график да се персонализира още повече с персонализиран размер на шрифта, използван за етикети в сюжета, за да се улесни четенето. За целта ще предадем повече параметри на функцията set_context, която изпълнява точно както звучат. Например, за да променим размера на шрифта на етикетите, ще използваме шрифта.параметър размер. Ето кодовия фрагмент за извършване на модификацията:

sns.set_context ("хартия", font_scale = 3, rc = "шрифт.размер ": 8," оси.размер на етикета ": 5)
sns.swarmplot (x = "Attack", y = "Defense", data = df)
plt.покажи ()

След като стартираме горния кодов фрагмент, ще видим следния изход:

Размерът на шрифта за етикета беше променен въз основа на параметрите, които предоставихме, и стойността, свързана с шрифта.параметър размер. Едно нещо, в което Seaborn е експерт, е да направи сюжета много интуитивен за практическа употреба и това означава, че Seaborn не е просто практичен пакет Python, а всъщност е нещо, което можем да използваме в нашите производствени внедрения.

Добавяне на заглавие към парцели

Лесно е да добавяте заглавия към нашите сюжети. Просто трябва да следваме проста процедура за използване на функциите на ниво оси, където ще извикаме set_title () функция, както показваме в кодовия фрагмент тук:

sns.set_context ("хартия", font_scale = 3, rc = "шрифт.размер ": 8," оси.размер на етикета ": 5)
my_plot = sns.swarmplot (x = "Attack", y = "Defense", data = df)
my_plot.set_title ("LH Swarm Plot")
plt.покажи ()

След като стартираме горния кодов фрагмент, ще видим следния изход:

По този начин можем да добавим много повече информация към нашите парцели.

Сиборн срещу Матплотлиб

Както разгледахме примерите в този урок, можем да установим, че Matplotlib и Seaborn не могат да бъдат директно сравнени, но те могат да се разглеждат като взаимно допълващи се. Една от характеристиките, която отнема Seaborn с 1 крачка напред, е начинът, по който Seaborn може да визуализира данните статистически.

За да се възползвате максимално от параметрите на Seaborn, силно препоръчваме да разгледате документацията на Seaborn и да разберете какви параметри да използвате, за да направите вашия парцел възможно най-близо до бизнес нуждите.

Заключение

В този урок разгледахме различни аспекти на тази библиотека за визуализация на данни, която можем да използваме с Python, за да генерираме красиви и интуитивни графики, които могат да визуализират данни във форма, която бизнесът иска от платформа. Seaborm е една от най-важните библиотеки за визуализация, когато става въпрос за инженеринг на данни и представяне на данни в повечето визуални форми, определено умение, което трябва да имаме под колана си, тъй като ни позволява да изграждаме модели на линейна регресия.

Моля, споделете отзивите си за урока в Twitter с @sbmaggarwal и @LinuxHint.

Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...
Урок за OpenTTD
OpenTTD е една от най-популярните бизнес симулационни игри там. В тази игра трябва да създадете прекрасен транспортен бизнес. Въпреки това, ще започне...