در این مطلب، به آموزش کامل نحوه ساخت یک دیتا فریم (Data Frame) در ماژول Pandas از پایتون (Python) میپردازیم! و با کلی مثال و تمرین، مبحث براتون جا میفته!
هر چند این توضیح رو نباید بدم، اما میدم! ما برای کارهایی که توی python قراره انجام بدیم، باید در پایتون کدنویسی کنیم! حالا ممکنه یه وقتهایی، در یک سری زمینهها، یه بندگان خدایی از قبل کدهایی رو نوشته باشن! مثلاً برای کارهایی آماری، یه عده کد نوشتن و ما میتونیم از کدهای اون ها به صورت آماده استفاده کنیم! چجوری؟!
در واقع اون بندگان خدا، کدهایی که مینویسن رو به صورت پکیج ارائه میکنن و ما میتونیم پکیج اون ها رو دانلود و نصب کنیم! و سپس از پکیج (که در واقع کدهای آمادهی اون بندگان خداست) استفاده کنیم!
قطعاً (حالا نگم قطعا، به احتمال 99.9 درصد) تا الان فضای نرم افزار اکسل رو دیدید! اگر هم ندید، در تصویز زیر ببینید! همینطور که میبینید یک جدول تر و تمیز داره که میشه دادهها رو خیلی راحت تر و بهتر مدیریت کرد!
شاید ما بگیم: چی میشد اگر پایتون (python) خودمون هم از این چیزا داشت و میشد دادهها رو انقدر تر و تمیز در قالب یک سری جدول نگه داری کرد و ….!
خبر خوش اینکه پایتون (Python) هم همچین چیزی داره!
در پایتون (python) به این فرمت جدولی که میبینید و تووووش داده و … ذخیره میکنیم، میگن دیتا فریم (Data Frame)!
راستی چون قراره با همین دادهها تا چندین آموزش بعدی در خدمتتون باشیم، یک معرفی بکنم این دادهها رو!
این دادهها مربوط به وبسایت خودمون (کولاک) است! (البته با یک تبدیل رو دادهها) [که اینکار برای همه شرکت ها متداول است و معمولاً دادههای واقعی خود را در اختیار مخاطبان قرار نمیدهند و یک تبدیل اولیه انجام میدهند، تا دادهها کمی تغییر کند و سپس آن را در اختیار عموم قرار میدهند!]
Day که در واقع بیانگر روز هست! در این دادهها 15 روز در نظر گرفتیم!
ستون بعدی Visitors هست! که تعداد بازدیدکنندگان وبسایت در آن روز را نمایش میدهد!
ستون بعدی نیز Bounce Rate یا نرخ خروج در همان روز است! در واقع Bounce Rate یا نرخ خروج، به درصدی از کاربران گفته میشه که میان توی سایت و فقط یک صفحه میبینن و تمام! پا میشن میرن! این میشه نرخ خروجی!
برای ساخت دیتافریم در پایتون از پکیج Pandas استفاده میکنیم! (اسم پکیج Pandas است!)
که شما باید اون رو نصب کرده باشید! برای آموزش نصب پکیجهای مختلف (که Pandas هم یکی است مثل بقیهشووون!) به آموزش زیر مراجعه کنید!
آموزش نصب پکیج های مختلف در پایتون (Python)
خیلی واضح و بدیهی است که اگر Pandas رو نصب نکنید، حتی یک خط از کدهای بعدی که در ادامه آموزش مینویسیم هم براتون اجرا نمیشه و خطا دریافت میکنید! پس اول اون رو نصب کنید و بعد ادامه بدید!
چندین روش برای ساخت یک دیتا فریم وجود داره!:
مطلب پیش نیاز:
آموزش دیکشنری ها در پایتون (Python)
فرض کنید قرار است، اون چیزی که در قالب عکس بالا دیدیم رو در پایتون پیاده سازی کنیم (البته در این گام قراره با دیکشنریها این کار رو در پایتون (python) انجام بدیم!)
در این صورت داریم:!
import pandas as pd datas={ "Day":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15], "Visitors": [18,26,18,18,9,9,20,30,16,24,33,27,22,26,42], "Bounce_Rate": [77.27,74.07,73.68,65,90,70,72,62.16,81.25,72,74.42,75.76,70.83,54.29,68] } df=pd.DataFrame(datas) print(df)
در خط اول این کد، ماژول pandas رو فراخووونی کردیم! اما چون حوصله نداریم از اسم کامل pandas در ادامه استفاده کنیم، یک اسم مستعار (alias) براش انتخاب میکنیم به اسم pd! و از این به بعد بجای صدا زدن اسم کاملش که طولانی است! فقط اسم مستعارش رو صدا میزنیم!
احتمالاً میپرسید میشه اسم مستعار رو هرچی دوست داریم بذاریم؟! جواب اینه که بله میشه! حتی میتونید اسم خودتون بذارید یا هر چیز دیگه!
در خطوط، دوم تا ششم، یک دیکشنری تعریف میکنیم به اسم datas!
در خط هفتم، میایم از کتابخووونه (یا ماژول) pandas استفاده میکنیم (چون داریم میگیم pd دیگه! و اگه یادتون باشه pd اسم مستعار همون pandas بود!) و میگیم بیاد و datas (که یکم بالاتر، به عنوان یک دیکشنری تعریفش کردیم) رو به یک دیتا فریم (Data Frame) تبدیل کن!
در خط آخر هم میگیم این دیتا فریمی که ساختیم رو بیا چاپ کن!
که خروجیش میشه:!
Day Visitors Bounce Rate 0 1 18 77.27 1 2 26 74.07 2 3 18 73.68 3 4 18 65.00 4 5 9 90.00 5 6 9 70.00 6 7 20 72.00 7 8 30 62.16 8 9 16 81.25 9 10 24 72.00 10 11 33 74.42 11 12 27 75.76 12 13 22 70.83 13 14 26 54.29 14 15 42 68.00
در این روش، عمومیترین و پرکاربردترین مورد، وارد کردن داده از excel و csv است (علی الخصوص CSV که شدیداً پرکاربرد است)!
اگر نمیدانید فایل CSV چیست، به مطلب زیر مراجعه کنید!
فایل CSV چیست و چگونه میتوان یک فایل CSV ساخت؟!
همچنین اینکه چجوری میشه از یک فایل CSV یک دیتا فریم (Data Frame) ساخت رو در آموزش زیر باهم خواهیم دید!
خواندن فایل csv در پایتون با استفاده از دستور read_csv در pandas
اما قبل از خداحافظی، بیاید چند نکته دیگه رو یاد بگیریم!
دوباره همون دیتا فریم بالا رو در نظر بگیرید! میخوایم فقط ستون نرخ خروج (Bounce_Rate) رو چاپ کنیم! برای اینکار دو راه حل داریم!:
راه حل 1) فقط کافیه بنویسیم!:
print(df.Bounce_Rate)
راه حل 2) فقط کافیه بنویسیم!:
print(df["Bounce_Rate"])
شاید بپرسین کدوم راه حل بهتره؟! واقعیت اینه که قطعاً راه حل دوم بهتره، چون مثلاً فرض کنید اینبار میخوایم ستونی رو فراخوانی کنیم به اسم “Bounce Rate”! توجه کنید که بین Bounce و Rate هیچ چیزی شبیه _ وجود نداره و فقط space گذاشتیم! در این صورت، در روش دوم میگیم:!
print(df["Bounce Rate"])
اما در روش اول، اگر بنویسیم!
print(df.Bounce Rate)
پایتون بهمون خطا میده! چون پیش خودش میگه: این فاصله چیه این گذاشته!!! پس قطعاً روش دوم بهتره و سعی کنید به روش دوم عادت کنید!
یکی از چیزهایی که قطعاً تا الان هِی از خودتون میپرسید اینه که: خب اگر دیتافریم ما مثلاً 1000 تا داده داشت! اگر بنویسیم دیتافریم را چاپ کن که خیلی زیاد میشه! راهی نداره مثلاً بگیم 5تای اولش رو چاپ کن، یا 4 تای آخرش رو و ….!
جواب اینه که اولاً اگر 1000 تا داده هم داشته باشید، و به پایتون (Python) بگید که دیتا فریم (Data Frame) رو چاپ کن! (حتی اگر خواهش هم بکنید! باز همهی دادهها رو چاپ نمیکنه!) و اون وسطها سه نقطه میذاره!
ولی در مورد اینکه بشه 5 تای اول رو چاپ کنیم و … ! آره میشه کاری کرد که یه تعدادی از اول، یا یه تعدادی از آخر دیتا فریم (Data Frame) رو چاپ کنه! که مبحث دو جلسه بعد ماست!
تعداد دیدگاه | 4 |
تعداد بازدید | 12.9K |
تاریخ انتشار | 24/04/2019 |
تاریخ بروزرسانی | 24/04/2019 |
نویسنده | گروه آموزشی کولاک |