تابع RANK
تابع RANK یک تابع آماری در اکسل است که رتبه یک عدد را در یک مجموعه از اعداد برمیگرداند.
دانستن رتبه و جایگاه میتواند برای ما جذاب باشد و موضوعی کاربردی است. مثلاً رتبهبندی دانشجویان، فروشندگان یا تأمینکنندگان. همچنین ترکیب این تابع با سایر توابع اکسل نیز میتواند مدلهایی کاربردی برای تصمیمگیری بسازد. از این جهت است که یادگیری این تابع (و شکلهای دیگر آن) مفید خواهد بود.
◀️ رتبهبندی توسط تابع RANK اینطور انجام میشود:
- شما یک عدد را در نظر میگیرید و محدودهای از اعداد را نیز مشخص میکنید،
- آنگاه از اکسل میخواهید که ابتدا اعداد آن محدوده را به ترتیب صعودی یا نزولی در یک لیست مرتب کند. نحوه مرتب کردن (صعودی یا نزولی) هم دست شماست.
- اکسل به شما میگوید که عدد مورد نظر شما در چه موقعیتی از آن لیست (مرتبشده) قرار دارد.
نحوه نوشتن تابع RANK
قالب نوشتن این تابع به شکل زیر است:
=RANK(number,ref,[order])
در قالب بالا:
- number: عددی است که می خواهید رتبه آن را بدانید (اجباری).
- ref: محدودهای از اعداد است که عدد مورد نظر در آن وجود دارد و میخواهید آن را با آنها مقایسه و رتبهبندی کنید (اجباری).
- order: یک عدد است که نحوه رتبهبندی مجموعهی اعداد صعودی است یا نزولی (اختیاری).
هنگام نوشتن فرمول RANK در قالب بالا:
- ابتدا عددی را در نظر میگیریم که میخواهیم رتبه آن را تعیین کنیم. میتوانیم آن را به شکل مقداری ثابت داخل فرمول بنویسیم ولی معمولاً این کار را به شکل ارجاع به سلول یا متغیر انجام میدهند. این گزینه در آرگومان number قرار میگیرد.
- بعد از آن ما محدوده اعدادی را باید انتخاب میکنیم که عدد مورد نظر در آن موجود است. آدرس این محدوده را به جای آرگومان ref قرار میدهیم. البته اگر این عدد در محدوده وجود نداشته باشد، خطای N/A# را خواهیم دید.
- اینکه رتبهبندی از بیشترین به کمترین یا از کمترین به بیشترین انجام میشود؟ این گزینه در آرگومان order تعیین میشود:
- اگر order برابر با ۰ (صفر) باشد یا وارد نشود، اکسل لیست را نزولی مرتب میکند (بیشترین به کمترین مقدار).
- اگر order هر عدد غیر صفر باشد، اکسل لیست را به ترتیب صعودی مرتب میکند.
اگر بخواهیم تابع RANK با مفاهیم تابع ریاضی نشان دهیم، ورودیها و خروجی تابع به شکل زیر خواهد بود:
✅البته توجه داشته باشید که:
- آرگومان order اختیاری است و اگر توسط شما تعیین نشود، حالت نزولی در نظر گرفتن خواهد شد.
- مقادیر غیر عددی در محدوده ref نادیده گرفته میشوند و رتبهبندی بدون آنها در خروجی اعلام میشود.
- قبل از استفاده از RANK نیازی به مرتبسازی مقادیر فهرست نیست چون خود تابع این کار را انجام میدهد.
رتبهبندی دانشآموزان بر اساس نمرات با تابع RANK
فرض کنید که در یک جدول اکسل، نمرات دانشآموزان در یک درس خاص ثبت شده است. میخواهیم رتبه هر دانشآموز را در این درس تعیین کنیم. برای این کار، میتوانیم از تابع RANK استفاده کنیم.
فرض کنید که نمرات دانشآموزان در محدوده A1:A10 ثبت شده است. برای تعیین رتبه دانشآموزی که نمره او در سلول A2 ثبت شده است، میتوانیم از فرمول زیر استفاده کنیم:
=RANK(A2,A1:A10,1)
بیایید فرمول بالا را طبق ساختار تابع RANK بررسی کنیم:
- در فرمول بالا، آرگومان number عددی است که میخواهیم رتبه آن را تعیین کنیم. در این مثال، عددی که میخواهیم رتبه آن را تعیین کنیم، نمره دانشآموزی است که در سلول A2 ثبت شده است.
- آرگومان ref محدودهای از اعداد است که عدد مورد نظر در آن موجود است. در این مثال، محدوده اعداد همان محدوده A2:A11 است که در آن نمرات دانشآموزان ثبت شده است.
- آرگومان order (اختیاری) تعیین میکند که رتبهها از بیشترین به کمترین یا از کمترین به بیشترین تعیین شوند. در این مثال، مقدار 1 برای آرگومان order استفاده شده است، بنابراین نمرات از بیشترین به کمترین تعیین میشوند.
رتبه اعداد تکراری در استفاده از تابع RANK
همان طور که گفتیم تابع RANK به مقادیر تکراری رتبه یکسانی را اختصاص میدهد و وجود اعداد تکراری بر رتبه اعداد بعدی تأثیر می گذارد.
به عنوان مثال، در لیستی از اعداد صحیح که به ترتیب صعودی مرتب شده اند، اگر عدد ۱۰ دو بار ظاهر شود و رتبه ۵ داشته باشد، عدد ۱۱ رتبه ۷ خواهد داشت (هیچ عددی رتبه ۶ نخواهد داشت).
نکات تکمیلی درباره تابع RANK
?در برخی از مستندات از جمله توضیحات مایکروسافت درباره تابع RANK گفته میشود که ref میتواند یک آرایه هم میتواند باشد. اما آن طور که ما بررسی کردیم، در محیط (رابط کاربری) اکسل، ref باید یک محدوده یا Range از سلولها باشد و نمیتواند آرایهای چون {1,2,3} باشد.
? از نظر مایکروسافت این تابع قدیمی است و توصیه میشود از شکلهای جدیدتر این تابع استفاده شود. با این حال هنوز این تابع روی نسخههای مختلف اکسل کار میکند. مایکروسافت استفاده از RANK.EQ یا RANK.AVG را به جای آن توصیه میکند. ممکن است این تابع در نسخههای آینده اکسل در دسترس نباشد.
جمعبندی
- تابع RANK یک تابع قدیمی اکسل است که برای رتبهبندی استفاده میشود.
- تابع RANK به مقادیر تکراری رتبه یکسانی را اختصاص میدهد.