علیرضا بخشی زادی محمودی
علیرضا بخشی زادی محمودی
خواندن ۳ دقیقه·۶ سال پیش

کتابخانه Seaborn مخصوص مصور سازی داده های آماری

در واقع کتابخانه مصور سازی داده ها در پایتون هست که بر پایه کتابخانه matplotlib میباشد. در واقع رابطی سطح بالا برای رسم گرافیک های آماری جذاب و اطلاع دهنده، فراهم می آورد. این کتابخانه شامل توابع مختلفی در دسته بندی های زیر میباشد:

  • رابطه ای
  • طبقه بندی
  • توزیع ها
  • رگراسیون
  • multiples
  • style
  • رنگ

در این مقاله توابع مرتبط با دسته بندی "توزیع ها" مورد بررسی قرار میگیرد.


مصور سازی توزیع های مجموعه داده ها

وقتی که دارید با مجموعه ای از داده ها سر و کله میزنید، به عنوان اولین چیزی که دوست دارید بدونید اینه که متغیرها به چه صورتی توزیع شده اند. در این قسمت شما را با برخی ابزارهای Seaborn برای بررسی توزیع های تک متغیره و یا دو متغیره آشنا می نمایم.

رسم توزیع های تک متغیره

مناسب ترین راه برای مشاهده توزیع های تک متغیره در Seaborn استفاده از تابع distplot میباشد. این تابع به صورت پیش فرض یک هیستوگرام همراه با KDE را برای داده مورد نظر رسم می نماید.

هیستوگرام ها

هیستوگرام ها احتمالاً برای شما آشنا باشند، تابع hist در کتابخانه matplotlib موجود میباشد. هیستوگرام توزیع داده ها را به صورت مجموعه ای از برد داده ها، دسته بندی میکند و اعدادی را که در هر دسته قرار میگیرد را به صورت ستونی بر روی نمودار نمایش میدهد.

برای روشن تر شدن موضوع، اجازه دهید تا منحنی KDE را حذف و rug plot را اضافه نماییم که باعث پدید آمدن ستون های ریز کوچکی در محور افقی میگردد. شما میتوانید rug plot را با استفاده از تابع rugplot و یا با استفاده از تابع distplot نمایش دهید.


هنگام رسم هیستوگرام، انتخاب اصلیِ شما تعداد فواصل و همچنین محل قرارگیری آنهاست. تابع distplot به صورت اتومات تعداد فواصل را تخمین میزند، اما تعداد فواصل کمتر و یا بیشتر، ممکن است تا خصیصه های بیشتری از داده ها را نمایان کند.

رسم توزیع های دو متغیره

کتابخانه Seaborn همچنین برای مصور سازی توزیع های دو متغیره نیز مورد استفاده قرار میگیرد. آسوده ترین راه برای این کار استفاده از تابع joinplot میباشد که رابطه بین دو متغیر را همراه با هیستوگرام آنها به صورت تک متغیره، به نمایش در می آورد.

scatterplot

آشنا ترین راه برای مصور سازی توزیع های دو متغیره scatterplot میباشد که به صورت نقاطی روی محورهای x وy نمایش داده میشوند. که این مشابه rugplot میباشد، اما در فضای 2 بعدی. شما میتوانید با استفاده از تابع plt.scatter از کتابخانه matplotlib و یا تابع joinplot به صورت پیش فرض، scatterplot را رسم نمایید.

Hexbin plots

مشابه هیستوگرام دو متغیره، hexbin plot میباشد که رویدادها را در شش ضلعی ها به نمایش در می آورد. این plot مخصوص مجموعه داده های عظیم میباشد. هم میتوان از طریق تابع plt.hexbin در کتابخانه matplotlib و هم از طریق تابع joinplot به آن دسترسی داشت. انتخاب پس زمینه سفید، براش مناسب تر به نظر می آید.


KDE

با استفاده از تابع kdeplot میتوان plot تراکم هسته ای دو بعدی را ترسیم نمود. با استفاده از این تابع میتوان plot های خاصی را بر روی محورهای کتابخانه matplotlib رسم نمود.

اگر مایلید که تراکم دو متغیره را به صورت پیوسته تر نمایش دهید، به سادگی میتوانید با افزایش تعداد کانتورها این کار را انجام دهید.

تابع joinplot از JointGrid برای مدیریت شکل استفاده میکند. اگه به انعطاف بیشتری نیاز دارید، میتواندی با استفاده مستقیم از JointGrid شکل خودتون رو رسم کنید. تابع joinplot به عنوان خروجی خود پس از plot کردن یک شیئ JointGrid بر میگرداند که شما میتوانید این شیئ را بر اساس نیازهای بصری خود دستکاری نمایید.

مصور سازی رابطه های جفت در مجموعه داده ها

برای رسم توزیع های دو متغیره جفت در مجموعه داده ها، میتواندی از تابع pairplot استفاده نمایید. که استفاده از این تابع باعث بوجود آمدن ماتریسی از محورها میشود که رابطه هر ستون را با فریم داده، به نمایش در می آورد. استفاده تابع با تنظیمات پیش فرض نیز توزیع های تک متغیره هر متغیر را به صورت اریب به نمایش در می آورد.

شبیه JoinGrid و تابع joinplot، تابع pairplot نیز بر پایه شیئ PairGrid ساخته شده است، که میتواند به صورت مستقیم جهت انعطاف بیشتر مورد استفاده قرار گیرد.



جهت مشاهده ویدیو آموزشی کتابخانه Seaborn و توابعی که در این مقاله ذکر گردید، بر روی لینک زیر کلیک نمایید.

https://www.aparat.com/v/K19Lp




احمد ابریشمیseabornمصور سازی داده
شاید از این پست‌ها خوشتان بیاید