کتابخانه Pandas و 6 گزینه برای نمایش فرمت در آن که باید به خاطر بسپارید

یکی از کتابخانه‌هایی که متخصصان علوم‌ داده تحلیل‌گران داده و مهندسان داده به صورت متدوال از آن در استفاده می‌کنند، ‌ کتابخانه Pandas است. این کتابخانه می‌تواند فریم داده را با فرمت HTML چاپ کند و اگر شما هم مثل من از JupyterLab/ Jupyter Notebook یا Colab گوگل…

5 دقیقه مطالعه
  • پشتیبانی شبکه
  • تعداد
  • کتابخانه
  • options
  • استفاده
  • Display
  • داده
  • Pandas
کتابخانه Pandas و 6 گزینه برای نمایش فرمت در آن که باید به خاطر بسپارید

خلاصه تحلیلی خبر

یکی از کتابخانه‌هایی که متخصصان علوم‌ داده تحلیل‌گران داده و مهندسان داده به صورت متدوال از آن در استفاده می‌کنند، ‌ کتابخانه Pandas است. این کتابخانه می‌تواند فریم داده را با فرمت HTML چاپ کند و اگر شما هم مثل من از JupyterLab/ Jupyter Notebook یا Colab گوگل…

موضوعات اصلی: پشتیبانی شبکه، تعداد، کتابخانه، options، استفاده، Display

یکی از کتابخانه‌هایی که متخصصانعلوم‌ دادهتحلیل‌گران داده و مهندسان داده به صورت متدوال از آن در استفاده می‌کنند، ‌ کتابخانه Pandas است. این کتابخانه می‌تواند فریم داده را با فرمت HTML چاپ کند و اگر شما هم مثل من از JupyterLab/ Jupyter Notebook یا Colab گوگل استفاده می‌‌کنید، می‌دانید که این ویژگی کتابخانه Pandas یکی از برجسته‌ترین ویژگی‌های این کتابخانه است.

کتابخانه Pandas از HTML و CSS از پیش تعریف‌شده استفاده می‌کند و به همین دلیل نگرانی در مورد فرمت‌های بی‌مورد است. اما گاهی اوقات هم می‌خواهیم این کتابخانه (خروجی) را با فرمتی به غیر از فرمت‌های پیش‌فرض را نمایش دهد. همان‌طور که احتمالاً می‌دانید برای انجام این کار می‌توانید ازpd.options.displayاستفاده کنید.

بسیاری از افراد با قابلیت‌های بی‌شمار کتابخانه Pandas آشنایی دارند، اما در هنگام استفاده از ان، گزینه‌های آن را به خاطر نمی‌آوردند. بیش از 30 گزینه مختلف فقط درpd.options.displayوجود دارد. به همین دلیل لامز است حتماً آن‌ها را به خاطر بسپارید.

در مقاله پیش‌رو مربوط به یکی از کتابخانه‌‎هاییادگیری عمیقاست و قرار است 6 گزینه مختلف کتابخانه Pandas را به شما معرفی می‌کنم و به شما توصیه می‌کنم برای ارتقای مهارت‌تان در کدنویسی آن‌ها را به خاطر بسپارید. در این صورت لازم نیست هر بار که می‌خواهید از آن‌ها استفاده کنید وقت‌تان را با جست‌و‌جو در گوگل و Stack Overflow هدر دهید.

توجه داشته باشید که من ازpdبه عنوان نام مستعار Pandas استفاده می‌کنم و فکر می‌کنم افراد زیادی مثل من ازimport pandas as pdاستفاده می‌کنند.

1-تعیین حداکثر تعداد ردیف‌ها

pd.options.display.max_rows

اگر یک دیتافریم با تعداد زیادی ردیف داشته باشید، کتابخانه Pandas خلاصه ردیف‌ها را در وسط صفحه نمایش می‌دهد. عدد پیش‌فرض 60 است.

کتایخانه Pandas

همان‌گونه که در تصویر فوق مشاهده می‌کنید، اگر دیتافریمی با بیش از 60 ردیف داشته باشید، 50 ردیف میانی نشان داده نمی‌شوند.

pd.DataFrame(np.random.randn(61, 5))

کتایخانه Pandas

اگر عددی انتخابی ما بیشتر از تعداد ردیف‌های دیتافریم باشد، تمامی ردیف‌ها نشان داده می‌شوند. برای مثال، اگر تعداد ردیف‌ها را بر روی 100 تنظیم کنیم

pd.options.display.max_rows = 100

کتایخانه Pandas

2- تعیین حداکثر تعداد ستون‌ها

pd.options.display.max_columns

علاوه بر ردیف‌ها، ستون‌ها را هم می‌توانیم خلاصه کنیم و آن‌ها را نشان ندهیم. عدد پیش‌فرض برای حداکثر تعداد ستون‌ها 20 است

کتایخانه Pandas

اگر این عدد پیش‌فرض را تغییر ندهیم و دیتافریمی با بیش از 20 ستون داشته باشیم، باز هم نمی‌توانیم ستون‌های میانی را ببینیم.

pd.DataFrame(np.random.randn(5, 21))

کتایخانه Pandas

اگر بخواهیم تمامی ستون‌ها نمایش داده شوند باید مقدار حداکثر تعداد ستون‌ها را افزایش دهیم

pd.options.display.max_columns = 50

کتایخانه Pandas

3- تعیین پهنای حداکثری سلول‌ها

pd.options.display.max_colwidth

علاوه بر تعداد ردیف‌ها و ستون‌ها، پهنای هر سلول‌ را هم می‌توان مشخص کرد. به طور پیش‌فرض کتابخانه Pandas فقط محتوای سلول‌هایی را نشان می‌دهد که حداکثر پهنای آن‌ها 50 باشد. به عبارت دیگر، سلول‌هایی که بیش از 50 کاراکتر در آن‌ها وجود داشته باشد، خلاصه می‌شوند.

pd.DataFrame({ 'col': [''.join(list("Towards Data Science.") * 3)] })

کتایخانه Pandas

من در کد فوق فقط رشته “Towards Data Science” را سه بار تکرار کردم که در مجموع 63 کاراکتر دارد و به همین دلیل بخش آخر آن نشان داده نشده است.

اگر حداکثر پهنای ستون‌ها را بر روی 80 تنظیم کنیم، کل متن نمایش داده می‌شود.

کتایخانه Pandas

4- تعیین حداکثر تعداد ستون‌هایی که در()infoنمایش داده می‌شوند

pd.options.display.max_info_columns

افراد زیادی از()df.infoبرای چک کردن پروفایل دیتافریم استفاده می‌کنند. با این حال برخی مواقع این کد تمامی ستون‌ها را در نتایج نمایش نمی‌دهد. و دلیل آن هم این است که در متد()infoحداکثر تعداد ستون‌هایی که خلاصه می‌شوند، محدود است. تعداد این ستون‌ها برابر با 100 است.

در این قسمت به صورت تصادفی یک دیتافریم تصادفی با بیش از 100 ستون ایجاد می‌کنیم و برای خلاصه کردن آن از متد()infoاستفاده می‌کنیم.

df = pd.DataFrame(np.random.randn(5, 101)) df.info()

کتایخانه Pandas

انتظار چنین چیزی را نداشتیم. برای دیدن “Dtype” و “Non-NullCount” تمامی ستون‌ها می‌توانیم از طریق گزینه max info columns اقدام کنیم.

pd.options.display.max_info_columns = 150 df.info()

کتایخانه Pandas

5- تعیینDisplay Precision

pd.options.display.precision

اگر توجه کرده‌ باشید، کتابخانهPandasبر تعداد اعداد اعشاری که می‌توانند در یک دیتافریم نشان داده شوند، محدودیت اعمال کرده است. در این قسمت از دیتافریمdfکه در قسمت قبلی ایجاد کردیم، استفاده می‌کنیم

کتایخانه Pandas

به اولین ستون، یعنی عدد اعشاری 939665 / -0 نگاه کنید. دلیل عدم نمایش کامل این عدد این است که کتابخانه Pandas بعد از رقم اعشاری فقط 6 عدد را نشان می‌دهد. اگر عدد را به طور کامل از دیتافریم بگیریم، خواهیم دید که تعداد اعداد اعشاری آن بیشتر است: 9396645167554308 / -0

df.iloc[0, 0]

کتایخانه Pandas

البته جای نگرانی نیست و این ویژگی بر اعدادی که بعداً در الگوریتم‌های‌تان استفاده خواهید کرد، اثر نمی‌گذارد و فقط در نمایش اعداد خلاصه می‌شوند. اگر بخواهیم اعداد را با جزئیات بیشتری ببینیم چه؟ عدد این گزینه را بر روی 5 تنظیم می‌کنیم.

pd.options.display.precision = 15

کتایخانه Pandas

در این حالت عدد به طور کامل نمایش داده می‌شود.

6- تنظیم فرمت اعشاری

pd.options.display.float_format

ممکن است بخواهیم کارِمان را به فرد دیگری نشان دهیم و یا اینکه دیتافریم شکیل‌تری داشته باشیم. به عقیده من این موضوع اهمیت زیادی دارد زیرا هرچه ارائه دیتافریم منظم‌تر و شکیل‌تر باشد، به بینش‌های بهتری دست پیدا خواهیم کرد. و در مقابل ارائه‌‌ای نامنظم منجر به اتلاف منابع و فرسودگی ذهنی می‌شود.

فرض کنید اعدادی را که در نمونه دیتافریم فوق استفاده کردیم، باید به درصد باشند و فقط دو عدد بعد از ممیز اعشاری برای ما اهمیت دارد. در این حالت می‌توانیم از این گزینه برای تنظیم فرمت نمایش استفاده کنیم.

pd.options.display.float_format = '{:.2f}%'.format

کتایخانه Pandas

این فرمت به اندازه کافی انعطاف‌پذیری دارد و شما می‌توانید آن را متناسب با نیازتان، برای مثال بر روی{(2f.,:)$}تنظیم کنید تا پول رایج را نشان دهید.

کتایخانه Pandas

جمع‌بندی

در این مقاله 6 گزینه نمایشی یکی ازکتابخانه های یادگیری عمیقیعنی کتابخانه Pandas را به شما معرفی کردم و بهتر است که آن‌ها را به خاطر بسپارید. این کتابخانه بیش از 30 گزینه نمایشی دارد اما فکر می‌کنم کاربران بیشتر از این سه مورد استفاده می‌کنند. اگر نمی‌خواهید وقت‌تان را با جست‌و‌جو در گوگل هدر دهید، بهتر است این 6 گزینه را به خاطر بسپارید.

برای ارزیابی پایداری، امنیت و نگهداری این زیرساخت، راهنمای پشتیبانی شبکه را نیز مطالعه کنید.