محاسبه گر تبدیل کواریانس به همبستگی و برعکس
پیش از این مقاله در مقاله ای دیگر تحت عنوان تفاوت ماتریس کوارانس و ماتریس همبستگی به صورت عملیاتی تفاوت بین دو ضریب کواریانس و همبستگی بیان گردید و هم در آن مطلب و هم در کلاس های آکادمی تحلیل آماری ایران بیان کردیم که تمامی نرم افزارهای آماری جهان رابطه ی دو متغیر را در دو حالت غیر استاندارد و استاندارد تخمین می زنند. در آن مقاله از طریق دو نرم افزار amos و spss نشان دادیم که در حالت غیر استاندارد تخمین رابطه دو متغیر در حقیقت کواریانس بین دو متغیر است و در حالت تخمین استاندارد آن ضریب همبستگی بین دو متغیر است. بنابراین ضریب همبستگی بین دو متغیر را در واقع همان کواریانس بین دو متغیر است که استاندارد شده است. یعنی کواریانس استاندارد شده دو متغیر، ضریب همبستگی بین دو متغیر گفته می شود.
خوب همین بحث کوتاه را می توان به جداول یا ماتریس های کواریانس و همبستگی تعمیم داد. ماتریس کواریانس که در حقیقت همان اسم کوتاه شده ی ماتریس واریانس-کواریانس است در حقیقت جدولی است که روی قطر اصلی آن واریانس های هر متغیر و روی خانه های دیگر کواریانس بین متغیر ها به صورت دو به دو قرار دارد. ماتریس همبستگی در حقیقت همان استاندارد شده ی ماتریس کواریانس است که روی قطر اصلی آن عدد یک و روی خانه های دیگر همان ضرایب همبستگی بین متغیر ها، دو به دو قرار دارد.(مرادی و میرالماسی، 1398، 89)
در این مقاله از طریق دو محاسبه گر به صورت خودکار نشان می دهیم که چگونه می توان ضریب کواریانس را به ضریب همبستگی و برعکس ضریب همبستگی را به ضریب کواریانس تبدیل نمود.
محاسبه گر تبدیل ضریب کواریانس به ضریب همبستگی
این محاسبه گر نیاز به سه مقدار دارد. یعنی اگر بخواهیم ضریب کواریانس دو متغیر را به ضریب همبستگی تبدیل نماییم باید مقدار کواریانس دو متغیر، انحراف معیار متغیر اول و انحراف معیار متغیر دوم را به محاسبه گر داد تا برای شما به صورت زیر ضریب همبستگی را محاسبه نماید.
محاسبه گر تبدیل ضریب همبستگی به ضریب کواریانس
این محاسبه گر نیاز به سه مقدار دارد. یعنی اگر بخواهیم ضریب همستگی دو متغیر را به ضریب کواریانس تبدیل نماییم باید مقدار همبستگی دو متغیر، انحراف معیار متغیر اول و انحراف معیار متغیر دوم را به محاسبه گر داد تا برای شما به صورت زیر ضریب کواریانس را محاسبه نماید.
منابع
- Moradi, M., & Miralmasi, A. (2020). Pragmatic research method. (F. Seydi, Ed.) (1st ed.). Tehran: School of quantitative andqualitative research. Retrieved from https://analysisacademy.com/
- Cohen, J., Cohen, P., West, S.G., and Aiken, L.S. (2003). Applied Multiple Regression/Correlation Analysis for the BehavioralSciences (3rd edition). Mahwah, NJ: Lawrence Earlbaum Associates.
خواندن مقالات زیر به محققین عزیز توصیه می شود
- موضوعات تحقیقاتی مورد توجه ژورنال ها در سال 2021
- آشنایی با فراترکیب (meta synthesis) و مراحل آن
- مقایسه بین نرم افزار های تحلیل کیفی (Maxqda، Nvivo، Atlasti)
- اشباع نظری با زبانی ساده
- سه سطح تشخیص مدل
- تشخیص انعکاسی یا ترکیبی بودن مدل اندازه گیری
- هدف های پیشینه یابی و پیشینه کاوی موضوع
- ویژگیهای محقق کیفی
- دانلود رایگان کتاب های مهم گراندد تئوری در جهان
- آموزش نگارش بیزینس پلن با استاندارد جهانی Business Plan Template
از کپی کردن مطالب سایت یا کانال بدون ذکر منبع خودداری شود.
ضریب همبستگی چیست؟
بارها توسط افراد مختلف در حوزههای شغلی گوناگون یا در رسانهها به منظور تحلیل آماری و بیان نتایج تحقیقات، واژه ضریب همبستگی یا اصطلاح لاتین آن Correlation را شنیدهایم. یکی از مهم ترین کاربردهای این مفهوم در بازارهای مالی است، که در این مطلب به بررسی آن و مباحث پیرامونی در حوزه بازار بورس میپردازیم. ضریب همبستگی یک ابزار آماری برای تعیین نوع و درجه رابطه متغیرهای کمی با یکدیگر است. این مفهوم یکی از معیارهای تشخیص میزان همبستگی دو متغیر میباشد. در واقع این ضریب نوع رابطه یعنی مستقیم یا معکوس بودن و شدت رابطه یعنی بازه ۱+ تا ۱- را نشان میدهد. همچنین اگر میان دو متغیر مذکور رابطهای وجود نداشته باشد، مقدار ضریب همبستگی برابر صفر است.
اصول کاربردی ضریب همبستگی
- ضریب همبستگی مثبت یعنی افزایش یک متغیر با افزایش متغیر دیگر و همچنین کاهش یک متغیر با کاهش متغیر دیگر همراه است.
- ضریب همبستگی منفی یعنی افزایش یک متغیر با کاهش متغیر دیگر و همچنین کاهش آن متغیر با افزایش متغیر دیگر همراه است.
- ضریب همبستگی صفر یعنی افزایش و کاهش دو متغیر مستقل از یکدیگر بوده و هیچ ارتباطی ندارند.
- هرچه مقدار ضریب همبستگی به ۱+ یا ۱- نزدیکتر باشد، همبستگی مثبت یا منفی متغیرها قویتر است.
ضریب همبستگی در بازار مالی
یکی از مفاهیم اساسی مورد استفاده معاملهگران حرفهای در انواع بازارهای مالی شامل سهام، کالا و ارز (فارکس) است؛ اما در این مطلب از ذکر مبانی آماری و جزئیات محاسباتی پرهیز نموده و تمرکز اصلی ما روی نحوه استفاده از این مفهوم در بازار سهام ایران میباشد. بررسیهای آماری ثابت کرده است، که نوسانات داراییها در بازارهای مالی نسبت به یکدیگر بدون ارتباط نیستند. حتی در مقیاس بزرگتر، بازارهای جهانی نیز به یکدیگر وابستگی داشته و کاملاً از یکدیگر تاثیر میپذیرند. مثلاً بارها مشاهده نمودهاید، که سقوط قیمت سهام در بازارهای مالی بزرگ جهان به صورت دومینو وار به سایر بازارهای سهام نیز سرایت کرده است. همسبتگی در میان داراییها بیدلیل نبوده و معمولاً به دلیل وجود وجوه اشتراک یا تضاد بنیادی میان این نمادها ایجاد میشود. در واقع یکی از مهمترین مزایای استفاده از مفهوم ضریب همبستگی حین سرمایهگذاری در بازارهای مالی، استفاده از فرصتهای بهینه و کاهش خطای تحلیل تا بیشترین حد ممکن است. از طرف دیگر برخی معاملهگران عمده نیز از این مفهوم به منظور اتخاذ موقعیتهای معاملاتی پوشش ریسک بهره میبرند.
ضریب همبستگی در بازار سهام ایران
اگر تجربه فعالیت در بازار بورس و اوراق بهادار تهران را داشته باشید، حتماً تاکنون وجود ضریب همبستگی مثبت نسبتاً بالا در کل بازار را متوجه شدهاید. به عبارت دیگر سهام موجود در بازار بورس و فرابورس ایران همبستگی مثبت بالایی نسبت به یکدیگر دارند. برای اثبات این موضوع هم میتوان، به نمودار سهام مختلف و شاخص کل در دورههای زمانی متفاوت مراجعه نمود. در واقع رفتار دمینووار بازارهای مالی در بورس تهران به طور کاملاً عینی و ملموس قابل مشاهده است. دلیل این رفتار بازار سهام نیز ناشی از شرایط بازار سرمایه ایران از لحاظ محدودیت تعداد شرکتهای پذیرفته شده، کم عمق بودن بازار، تحریمها و عدم اتصال به بازار جهانی یا رفتار هیجانی توده معاملهگران میباشد.
همبستگی با سهام لیدر یا شاخصساز
در بازار سهام ایران گروههای صنعتی مختلفی داریم. از طرف دیگر تعدادی سهام مربوط به غولهای صنعتی و اصطلاحاً شاخصساز وجود دارند، که از نظر اکثر فعالان بورس تعیینکننده روند بازار بوده و سهام متوسط یا کوچک در بسیاری از موارد تابع روند این نمادها هستند. با بررسی نمودارهای قیمتی بازار بورس موارد متعددی را مشاهده میکنیم، که با ایجاد نوسانات صعودی یا نزولی در سهام نمادهای لیدر بازار شرکتهای کوچکتر همگروه نیز به سرعت تغییر روند داده و با آنها همسو شدهاند. البته مواردی نیز وجود دارند، که به دلیل وقوع اتفاقات خاص درون شرکت یا مؤلفههای بنیادی روند برخی تکسهمها نسبت به سهم لیدر یا کل بازار متفاوت بوده است.
همبستگی با سهامداران عمده (شرکت های مادر)
از دیگر همبستگیهای مهم بازار سهام ایران میتوان، به ترکیب سهامداران شرکتها اشاره نمود. به طور مثال یک شرکت بورسی نظیر هلدینگهای سرمایهگذاری (سایر شرکتها در راستای تملک یا جایگزین نمودن سهام ارزشمند بورسی) اقدام به خرید سهام سایر شرکتهای بورسی از صنایع مختلف نموده و پرتفوی سهام تشکیل داده است. این شرکتها به عنوان سهامدار در ترکیب سهامداران حضور دارند. در چنین شرایطی اگر در وضعیت بنیادی یا قیمتی سهام خریداری شده تحول مثبتی رخ دهد، طبعاً در ارزش ذاتی نماد شرکت سهامدار عمده نیز تعدیل مثبت ایجاد خواهد شده و یا در صورتی که درصد سهامداری بسیار بالا باشد، نوسانات قیمتی نمادها مشابه چگونه محاسبه ضریب همبستگی بوده و تفاوتی ندارند.
همبستگی بر اساس ترکیب پرتفوی
هبستگی سهام بورسی گاهاً بر اساس وضعیت سبد سرمایهگذاری آنها ایجاد میشود. اگر گزارشات و صورتهای مالی برخی شرکتها را بررسی کنید، شباهت زیادی در پرتفوی آنها قابل مشاهده است. حال اگر به نمودار قیمت این نمادها نیز مراجعه کنیم، شباهت معناداری در جزئیات نوسانات قیمتی آنها وجود دارد. به طور کلی با استفاده از ضریب همبستگی میتوانید، فرصتهای سرمایهگذاری مناسبی را شکار کنید. مثلاً اگر سایر شروط تحلیل تکنیکال و بنیادی مورد نظر شما برقرار باشند، خرید سهام یک شرکت سرمایهگذاری دارای پرتفوی بورسی مثبت (نمادهای موجود در پرتفوی شرایط بنیادی و قیمتی مثبتی دارند) در قیمتهای منفی ارزنده است.
تشکیل پرتفوی با توجه به ضریب همبستگی
موارد مذکور شامل بخشی از روابط و همبستگیهایی است، که در بازار سهام مشاهده شده و حین سرمایهگذاری باید حتماً به این موارد توجه داشت. در واقع برای معاملهگری موفق صرفاً نیاز به درک مفاهیم تحلیلی متعدد و پیچیده نداشته و بعضاً با توجه به چنین نکات سادهای میتوان، از ورود به موقعیتهای معاملاتی اشتباه با ریسک بالا جلوگیری نمود. به طور مثال اگر چند سهم با همبستگی مثبت بالا خریداری کرده و یکی از سهام اصلی دچار روند نزولی شود، احتمالاً روند قیمتی بقیه سهام موجود در پرتفوی نیز معکوس شده و یک ضرر سنگین چند برابری را متحمل میشوید!
حال در مورد ضریب همبستگی به دو مثال از بازار سهام تهران توجه کنید.
۱- در تاریخ نگارش مطلب (۲۷/۰۶/۱۳۹۹) و بر اساس اطلاعات سایت TSETMC، شرکت سرمایهگذاری خوارزمی مالک ۱/۱ درصد معادل ۱۱۲ میلیون سهم از گروه خودروسازی بهمن است. همانطور که اشاره نمودیم، در صورت وقوع اتفاقات بنیادی مثبت در نماد خبهمن در میزان سودسازی نماد وخارزم نیز متناسب با میزان تملک سهام خبهمن تعدیل مثبت ایجاد میشود. همچنین اگر در پرتفوی بورسی خود نماد وخارزم دارید، دیگر خرید نماد خبهمن چندان منطقی نیست؛ زیرا به صورت غیرمستقیم و از طریق سرمایهگذاری خوارزمی این نماد (خبهمن) را خریداری نمودهاید! در واقع اگر اصرار به خرید یک نماد خودرویی دارید، حتیالامکان باید نماد خودرویی دیگری را خریداری کنید، تا قاعده متنوع سازی رعایت شده و از تحمل ریسک چند برابر پرهیز نمایید.
۲- در مثال بعدی به بررسی دو نماد خساپا و وساپا میپردازیم. در ابتدا به ترکیب سهامداران خودروسازی سایپا توجه کنید.
ترکیب سهامداران شرکت سرمایهگذاری سایپا نیز جالب است!
در نهایت با توجه به ترکیب سهامداران فوق، قطعاً مشاهده این نمودار قیمتی دور از انتظار نیست.
اگر نمودار این دو سهم را در بلندمدت مورد بررسی قرار دهیم، در بسیاری از مواقع حتی در کوچکترین نوسانات بازار نیز مسیر یکسانی داشتهاند. بنابر تفاسیر فوق خرید و سهامداری همزمان این دو شرکت با توجه به همبستگی تقریباً کامل آنها، از دیدگاه متنوع سازی و مدیریت ریسک اصلاً منطقی نیست.
کلام پایانی
همواره در بخشهای پایانی مقالات و حین معرفی تکنیکهای مختلف معاملهگری به این موضوع تأکید نمودهایم، که هیچ کدام از این ابزار عملکرد قطعی و صد درصدی نداشته و همواره باید با صرف زمان، کسب تجربه و بر اساس تعدادی از روشهای تحلیل و معاملهگری، استراتژی یا فلسفه معاملاتی خود را به مرور زمان بسازید. مفهوم ضریب همبستگی در بازار سهام نیز از این قاعده مستثنی نبوده و اگر بیشتر در این زمینه جستجو کنید، مطمئناً به میزان تسلط بالاتری رسیده و شاید همبستگیهای بیشتری را نیز بیابید.
محاسبات آماری در متلب – میانگین، واریانس ،میانه و … در متلب
برای متغیرهای تصادفی و مدلهای احتمالاتی محاسبات آماری در متلب را انجام خواهیم داد. مدلهای احتمالاتی (Probabilistic Models) همچون مدلهای معین (Deterministic Models) سعی در پیشبینی و شبیهسازی یک پدیده را دارد اما برعکس مدلهای معین که مقدار مشخصی دارند و عدم قطعیتی ندارند، مدلهای احتمالاتی رفتار یک مدل را با مقادیر مختلفی شبیهسازی میکنند که متناظر با احتمالهای مختلفی هستند.
برای پردازش دادهها یک پدیده یا همان محاسبات آماری دو نوع شاخص آماری در محیط متلب تعریف میشود:
1-اندازهگیریهای مرکزی:
این شاخصها شامل میانگین(مقدار مورد انتظار)، میانه و مد میباشد.
2- اندازهگیریهای پراکندگی:
این دسته از شاخصها شامل واریانس و انحراف معیار و … میباشد.
در این مطلب قصد داریم تا با انواع شاخصهای آماری رایج مورد استفاده در تحلیلهای آماری آشنا شویم.
شما دانشجویان عزیز میتوانید برای تسلط به نرمافزار متلب سایر مقالات و « فیلم های آموزش متلب » را دنبال نمایید و همین الان تسلط خود به متلب را چندین برابر کنید.
محاسبات آماری در متلب : میانگین در متلب – دستور mean در متلب
میانگین یا مقدار موردانتظار (Expected value) از نخستین شاخصهای است که برای متغیرهای تصادفی و مدلهای آماری محاسبه میشود تا بتوان به کمک آن به طور کاملا تقریبی یک مقدار موردانتظار از متغیر تصادفی را در نظر گرفت. محاسبه میانگین براساس عملگر امید ریاضی و برای تعداد N نمونه برای متغیر تصادفی X بصورت زیر تعریف میشود:
برای محاسبه میانگین در متلب کافی است از دستور mean استفاده کنیم که برای یک ماتریس دلخواه این مقدار را محاسبه میکنیم:
همانطور که مشاهده میکنید اگر در ورودی دوم عدد 1 را قرار دهیم برای محاسبه میانگین بر روی سطرها حرکت میکند و میانگین اعداد روی یک ستون را در نظر میگیرد و اگر ورودی دوم را عدد 2 قرار دهیم میانگین اعداد روی هر سطر را محاسبه میکند و اصطلاحا روی ستونها حرکت میکند. در حالتی که بدون ورودی دوم فراخوانی شود به طور پیش فرض حالت اول را در نظر میگیرد.
در صورتی که در یک متغیر تصادفی اعدادی تعریف نشده (nan ) وجود داشته باشد با کمک زیر دستور omitna میتوان این اعداد را حذف کرد که در میانگین تاثیر نداشته باشند. همچنین میتوان از دستور nanmean نیز استفاده کرد:
A= [-2 2 3 2;-5 2 1 4; 3 -7 9 nan]
mean(A,’omitnan’)
nanmean(A)
-1.3333 -1.0000 4.3333 3.0000
میانه در متلب – دستور median در متلب
همانطور که میدانید میانه دادهای است که پنجاه درصد دادهها از آن کوچکتر و یا بزرگتر هستند. در توزیع نرمال میانه و میانگین یکی هستند اما در حالت کلی باید بین میانگین و میانه تفاوت قائل شد. برای محاسبه میان در متلب دستور median قرار داده شده است.
اگر مانند محاسبه میانگین در متلب دادههایی از جنس nan داشته باشیم، باید آنها را حذف کنیم. برای بدست آوردن میانه در متلب در این حالت نیز میتوانیم از زیردستور omitna استفاده کنیم. همچنین برای محاسبه میانه در متلب در این حالت میتوانیم از دستور nanmedian نیز استفاده کنیم. به عنوان مثال میخواهیم برای 1000 عدد با توزیع استاندارد نرمال میانه را محاسبه کنیم:
B=randn(1,1000);
median(B) = -0.0304
mean(B) = -0.0326
همانطورکه مشاهده میکنید چون توزیع نرمال میباشد میانه و میانگین تقریبا با هم برابر و نزدیک صفر میباشند.
در اینجا برای تولید اعداد تصادفی که توزیع استاندارد نرمال دارند از دستور randn استفاده کردهایم. به شما پیشنهاد میشود که اگر در تولید اعداد تصادفی در متلب مسلط نیستید یا میخواهید با دستورات کامل آن آشنا شوید حتما مقاله « تولید اعداد تصادفی در متلب » را مطالعه کنید.
مد در متلب – دستور mode در متلب
در ادامه محاسبات آماری در متلب شاخص مد را بررسی میکنیم. مد (mode) در تحلیلهای آماری دادهای است که بیشترین فراوانی را دارد.
برای محاسبه مقدار مد در متلب یا دادهای که بیشترین فراوانی را دارد، از دستور mode استفاده میکنیم. برای بدست آوردن مد در متلب برای متغیرهای تصادفی روند کاملا مشابه با دستور mean برای محاسبه میانگین میباشد.
همچنین این دستور در حالت کلی دارای سه خروجی میباشد. به عنوان مثال فرض کنید که میانگین بارش در هر ماه برحسب میلیمتر در یک شهر خشک بصورت زیر باشد:
A=[10 8 11 8 5 4 9 15 16 18 20 10.5];
[M,F,C]=mode(A,2)
M=8;
F=2
C=1×1 cell array
همانطور که ملاحظه میفرمایید در محاسبه مد در متلب خروجی M مقدار عددی که بیشترین تکرار را دارد نشان میدهد و خروجی F تعداد تکرار آن عدد را نشان میدهد و همچنین خروجی C متناظر با خروجی M میباشد.
همچنین عدد 2 در ورودی دوم دستور mode مشابه با دستور mean برای این است که برای محاسبه مد در متلب حرکت را بر روی ستونهای انجام دهد.
محاسبات آماری در متلب : واریانس در متلب – دستور var در متلب
واریانس یک متغیر تصادفی براساس عملگر امید ریاضی بصورت لنگر دوم مرکزی تعریف میشود. همچنین برای تعداد N نمونه واریانس یک متغیر تصادفی بصورت زیر تعریف میشود:
که رابطه اول اصطلاحا unbiased و رابطه دوم حالت biased میباشد. در محاسبه واریانس در متلب رابطه اول (var(x,0 و رابطه دوم بصورت (var(x,1 ایجاد میشود. معمولا در بیشتر از چگونه محاسبه ضریب همبستگی موارد از رابطه اول استفاده میشود زیرا در صورتی که واریانس تعدادی نمونه بخواهد با واریانس جامعه برابر باشد ثابت خواهد شد که واریانس نمونه باید رابطه نخست را داشته باشد.
به طور کلی برای محاسبه واریانس در متلب یا همان لنگر مرکزی دوم از دستور var استفاده میشود. برای حالتی که اعداد nan را بخواهیم حذف کنیم از دستور nanvar میتوانیم استفاده کنیم.
شما میتوانید انواع پروژهای کاربردی (بخصوص برای دانشجویان مهندسی) نرمافزار متلب را در صفحه « پروژه آماده matlab » مشاهده و دانلود نمایید.
انحراف معیار در متلب – دستور std در متلب
اما شاخصی که اهمیت بیشتری نسبت به واریانس در محاسبات آماری در متلب و مدلهای احتمالاتی دارد، انحراف معیار (Standard Deviation) یا همان جذر واریانس میباشد که پراکندگی دادهها نسبت به میانگین را نشان میدهد. انحراف معیار به دلیل اینکه هم بعد با متغیر تصادفی است میتواند در مقایسه چندین متغیر تصادفی که بعد یکسانی دارند مورد استفاده قرار گیرد.
برای محاسبه انحراف معیار در متلب از دستور std استفاده میشود و برای حذف اعداد تعریف نشده از دستور nanstd در حالت کلی استفاده میشود. به عنوان مثال برای 2000 عدد بصورت یکنواخت بین 10 تا 100 پارمترهای واریانس و انحراف معیار در متلب را بدست میآوریم:
x=unifrnd (10,100,1,2000);
var(x,1) = 654.7821
var(x,0) = 655.1097
std(x) = 25.5951
همانطور که مشاهده میکنید در محاسبه واریانس در متلب برای تعداد نمونههای زیاد هر دو رابطه پاسخ تقریبا یکسانی را نشان میدهند.
محاسبات آماری در متلب: محاسبه ضریب چولگی در متلب – دستور skewness در متلب
در مدلهای احتمالاتی و متغیرهای تصادفی ضریب چولگی (skewness) نشان دهنده میزان تقارن یک متغیر تصادفی حول میانگین میباشد. در شکل زیر ضریب چولگی در حالتهای و تغییر کردن سایر پارامترها را مشاهده میکنید.
مطابق شکل فوق اگر ضریب چولگی مثبت باشد، شکل به سمت چپ اصطلاحا skewness دارد و اگر ضریب چولگی منفی باشد، شکل به سمت راست skewness خواهد داشت. در صورتی که این ضریب صفر باشد، این ضریب حول میانگین متقارن خواهد بود مانند توزیع نرمال.
این ضریب بصورت زیر محاسبه میشود:
برای محاسبه ضریب چولگی در متلب از دستور skewness استفاده میشود. به عنوان مثال برای یک میلیون داده از یک توزیع نرمال با میانگین 1 و انحراف معیار 2 میخواهیم این ضریب را محاسبه کنیم:
y=1+2*randn (1,1000000);
skewness(y) = -9.6266e-04
همانطور که مشاهده میکنید در محاسبه ضریب چولگی در متلب به دلیل اینکه توزیع نرمال توزیع متقارن است این ضریب به عدد صفر بسیار نزدیک میباشد.
اگر در تعریف اعداد تصادفی در متلب با توزیع نرمال مشکل دارید، حتما مقاله تولید عدد تصادفی را که در بالا معرفی شده است مطالعه نمایید.
محاسبات آماری در متلب: محاسبه ضریب کورتوسیس در متلب – دستور kurtosis در متلب
در مدلسازی احتمالاتی ضریب کورتوسیس (kurtosis) معیاری از مسطح بودن تابع توزیع میباشد. هر چه مقدار ضریب کوتوسیس بیشتر باشد، تغییرات یک مقدار تصادفی بیشتر خواهد بود.
ضریب کورتوسیس برای توزیع یکنواخت عدد 1.8، برای توزیع نرمال عدد 3 و برای توزیع رایلی عدد 6 میباشد (که بیشترین مقدار این ضریب را در بین توزیعهای رایج داراست.)
این ضریب بصورت زیر محاسبه میشود:
برای محاسبه ضریب کورتوسیس در متلب از دستور kurtosis استفاده میشود. به عنوان مثال برای توزیع نرمال با میانگین 1 و انحراف معیار 2 خواهیم داشت:
y=1+2* randn (1,1000000);
kurtosis(y) = 3.0044
همانطور که مشاهده میکنید مطابق مطلب گفته شده این ضریب به عدد 3 نزدیک میباشد. در تعریفی دیگر از فرمول فوق عدد 3 را کم میکنند که در آن تعریف این ضریب به نسبت توزیع نرمال سنجیده میشود.
محاسبات آماری در متلب: محاسبه کواریانس در متلب – دستور cov در متلب
مفهوم کواریانس برای دو متغیر تصادفی که برحسب هم ترسیم شدهاند را در شکل زیر مشاهده میکنید. تغییرات دو متغیر را نسبت به هم مشاهده میکنید.
کواریانس برای دو متغیر تصادفی X و Y بصورت زیر تعریف میشود. همچنین رابطه سوم محاسبه ماتریس کواریانس در متلب را نشان میدهد.
برای محاسبه ماتریس کواریانس در متلب از دستور cov استفاده میشود. اگر دستور cov بصورت تک ورودی فراخوانی شود همان واریانس در عمل محاسبه خواهد شد.
در محاسبه ماتریس کواریانس به صورت فوق عمل خواهد شد. دقت شود که در محاسبه ماتریس کواریانس در متلب حتما باید سایز هر دو بردار متغیر تصادفی با هم برابر باشد.
x=unifrnd (10,100,1,2000);
y=1+2*randn (1,2000);
cov (y, x) =
[ 4.0612 -0.7143 ; -0.7143 661.1731 ]
درایههای رو قطر اصلی ماتریس کواریانس در واقع همان واریانس هر متغیر خواهند بود.
برای یک ماتریس که هر کدام از ستونهای آن از یکسری مشاهدات از متغیر تصادفی است ماتریس کواریانس، کواریانس دوطرفه بین هر دو ترکیب ستون را محاسبه میکند. برای مثال زیر خواهیم داشت:
A = [1.77 -0.005 3.98; NaN -2.95 NaN; 2.54 0.19 1.01]
C = cov(A,’omitrows’)
C =
0.2964 0.0751 -1.1435
0.0751 0.0190 -0.2896
-1.1435 -0.2896 4.4104
لازم به ذکر است همانطور که در محاسبه میانگین و انحراف معیار گفته شد، چون در ماتریس مشاهدات اعداد تعریف نشده داشتیم و میخواهیم آنها را حذف کنیم از زیردستور omitrows استفاده شده است.
محاسبات آماری در متلب: محاسبه ضریب همبستگی در متلب – دستور corrcoef در متلب
ضریب همبستگی (correlation) بین دو متغیر تصادفی معیاری از وابستگی خطی است. این ضریب چون بدون بعد است میتواند روابط دو به دوی بین متغیرهای تصادفی با ابعاد مختلف را بیان کند. به عنوان مثال وابستگی زیادی بین مقاومت فشاری دو ستون در یک ساختمان وجود دارد که عملا همبستگی مثبت بین آنها وجود دارد و بین بارش برف و دمای هوای یک همبستگی منفی وجود دارد. مطابق شکل زیر:
ضریب همبستگی از طریق روابط زیر محاسبه میشود و ماتریس همبستگی مطابق رابطه سوم در محیط متلب محاسبه میشود:
برای محاسبه ضریب همبستگی در متلب از دستور corrcoef استفاده میشود. به عنوان مثال برای دو متغیر تصادفی X و Y استاندارد نرمال بصورت زیر ضریب همبستگی را محاسبه میکنیم:
X=randn(1,1000);
Y=randn(1,1000);
corrcoef(X,Y) =
1.0000 -0.0017
-0.0017 1.0000
این دستور همچنین دارای خروجیهای بیشتر و زیردستوراتی میباشد که به دلیل اهمیت کم آنها از آوردن آنها صرف نظر کردهایم. اما شما میتوانید با مراجعه به help نرمافزار متلب یا سایت اصلی نرمافزار متلب در صورت نیاز این تنظیمات را مشاهده نمایید.
در پایان امیدوارم این مطلب بتواند محاسبات آماری در متلب را برای شما به طور ساده بیان کند.
محاسبه ضریب همبستگی پیرسون در پایتون : Pearson correlation
در بسیاری از برنامه های تحلیلی نیاز به محاسبه ضریب همبستگی پیرسون در پایتون داریم. در ادامه نحوه محاسبه ضریب پیرسون را آموزش داده ایم
برای محاسبه ضریب همبستگی پیرسون در پایتون میتوانیم از تابع pearsonr از کتابخانه Numpy استفاده کنیم در ادامه کد آن را آورده ایم:
اگر کتابخانه numpy را نصب ندارید برای نصب آن میتوانید به آموزش نصب کتابخانه در پایتون مراجعه کنید
ابتدا دو ماتریس داده بنام data1 و data2 با توزیع گوسی به ترتیب با میانگین 100 و واریانس 20 و همچنین میانگین 50 و واریانس data1 تولید کرده ایم. سپس ضریب همبستگی پیرسون بین این دو ماتریس داده را محاسبه کرده ایم.
برای تولید اعداد تصادفی در پایتون میتوان از توزیع های مختلف استفاده کرد برای توضیحات بیشتر به “روشهای تولید اعداد تصادفی در پایتون” مراجعه کنید
محاسبات آماری در متلب – میانگین، واریانس ،میانه و … در متلب
برای متغیرهای تصادفی و مدلهای احتمالاتی محاسبات آماری در متلب را انجام خواهیم داد. مدلهای احتمالاتی (Probabilistic Models) همچون مدلهای معین (Deterministic Models) سعی در پیشبینی و شبیهسازی یک پدیده را دارد اما برعکس مدلهای معین که مقدار مشخصی دارند و عدم قطعیتی ندارند، مدلهای احتمالاتی رفتار یک مدل را با مقادیر مختلفی شبیهسازی میکنند که متناظر با احتمالهای مختلفی هستند.
برای پردازش دادهها یک پدیده یا همان محاسبات آماری دو نوع شاخص آماری در محیط متلب تعریف میشود:
1-اندازهگیریهای مرکزی:
این شاخصها شامل میانگین(مقدار مورد انتظار)، میانه و مد میباشد.
2- اندازهگیریهای پراکندگی:
این دسته از شاخصها شامل واریانس و انحراف معیار و … میباشد.
در این مطلب قصد داریم تا با انواع شاخصهای آماری رایج مورد استفاده در تحلیلهای آماری آشنا شویم.
شما دانشجویان عزیز میتوانید برای تسلط به نرمافزار متلب سایر مقالات و « فیلم های آموزش متلب » را دنبال نمایید و همین الان تسلط خود به متلب را چندین برابر کنید.
محاسبات آماری در متلب : میانگین در متلب – دستور mean در متلب
میانگین یا مقدار موردانتظار (Expected value) از نخستین شاخصهای است که برای متغیرهای تصادفی و مدلهای آماری محاسبه میشود تا بتوان به کمک آن به طور کاملا تقریبی یک مقدار موردانتظار از متغیر تصادفی را در نظر گرفت. محاسبه میانگین براساس عملگر امید ریاضی و برای تعداد N نمونه برای متغیر تصادفی X بصورت زیر تعریف میشود:
برای محاسبه میانگین در متلب کافی است از دستور mean استفاده کنیم که برای یک ماتریس دلخواه این مقدار را محاسبه میکنیم:
همانطور که مشاهده میکنید اگر در ورودی دوم عدد 1 را قرار دهیم برای محاسبه میانگین بر روی سطرها حرکت میکند و میانگین اعداد روی یک ستون را در نظر میگیرد و اگر ورودی دوم را عدد 2 قرار دهیم میانگین اعداد روی هر سطر را محاسبه میکند و اصطلاحا روی ستونها حرکت میکند. در حالتی که بدون ورودی دوم فراخوانی شود به طور پیش فرض حالت اول را در نظر میگیرد.
در صورتی که در یک متغیر تصادفی اعدادی تعریف نشده (nan ) وجود داشته باشد با کمک زیر دستور omitna میتوان این اعداد را حذف کرد که در میانگین تاثیر نداشته باشند. همچنین میتوان از دستور nanmean نیز استفاده کرد:
A= [-2 2 3 2;-5 2 1 4; 3 -7 9 nan]
mean(A,’omitnan’)
nanmean(A)
-1.3333 -1.0000 4.3333 3.0000
میانه در متلب – دستور median در متلب
همانطور که میدانید میانه دادهای است که پنجاه درصد دادهها از آن کوچکتر و یا بزرگتر هستند. در توزیع نرمال میانه و میانگین یکی هستند اما در حالت کلی باید بین میانگین و میانه تفاوت قائل شد. برای محاسبه میان در متلب دستور median قرار داده شده است.
اگر مانند محاسبه میانگین در متلب دادههایی از جنس nan داشته باشیم، باید آنها را حذف کنیم. برای بدست آوردن میانه در متلب در این حالت نیز میتوانیم از زیردستور omitna استفاده کنیم. همچنین برای محاسبه میانه در متلب در این حالت میتوانیم از دستور nanmedian نیز استفاده کنیم. به عنوان مثال میخواهیم برای 1000 عدد با توزیع استاندارد نرمال میانه را محاسبه کنیم:
B=randn(1,1000);
median(B) = -0.0304
mean(B) = -0.0326
همانطورکه مشاهده میکنید چون توزیع نرمال میباشد میانه و میانگین تقریبا با هم برابر و نزدیک صفر میباشند.
در اینجا برای تولید اعداد تصادفی که توزیع استاندارد نرمال دارند از دستور randn استفاده کردهایم. به شما پیشنهاد میشود که اگر در تولید اعداد تصادفی در متلب مسلط نیستید یا میخواهید با دستورات کامل آن آشنا شوید حتما مقاله « تولید اعداد تصادفی در متلب » را مطالعه کنید.
مد در متلب – دستور mode در متلب
در ادامه محاسبات آماری در متلب شاخص مد را بررسی میکنیم. مد (mode) در تحلیلهای آماری دادهای است که بیشترین فراوانی را دارد.
برای محاسبه مقدار مد در متلب یا دادهای که بیشترین فراوانی را دارد، از دستور mode استفاده میکنیم. برای بدست آوردن مد در متلب برای متغیرهای تصادفی روند کاملا مشابه با دستور mean برای محاسبه میانگین میباشد.
همچنین این دستور در حالت کلی دارای سه خروجی میباشد. به عنوان مثال فرض کنید که میانگین بارش در هر ماه برحسب میلیمتر در یک شهر خشک بصورت زیر باشد:
A=[10 8 11 8 5 4 9 15 16 18 20 10.5];
[M,F,C]=mode(A,2)
M=8;
F=2
C=1×1 cell array
همانطور که ملاحظه میفرمایید در محاسبه مد در متلب خروجی M مقدار عددی که بیشترین تکرار را دارد نشان میدهد و خروجی F تعداد تکرار آن عدد را نشان میدهد و همچنین خروجی C متناظر با خروجی M میباشد.
همچنین عدد 2 در ورودی دوم دستور mode مشابه با دستور mean برای این است که برای محاسبه مد در متلب حرکت را بر روی ستونهای انجام دهد.
محاسبات آماری در متلب : واریانس در متلب – دستور var در متلب
واریانس یک متغیر تصادفی براساس عملگر امید ریاضی بصورت لنگر دوم مرکزی تعریف میشود. همچنین برای تعداد N نمونه واریانس یک متغیر تصادفی بصورت زیر تعریف میشود:
که رابطه اول اصطلاحا unbiased و رابطه دوم حالت biased میباشد. در محاسبه واریانس در متلب رابطه اول (var(x,0 و رابطه دوم بصورت (var(x,1 ایجاد میشود. معمولا در بیشتر از موارد از رابطه اول استفاده میشود زیرا در صورتی که واریانس تعدادی نمونه بخواهد با واریانس جامعه برابر باشد ثابت خواهد شد که واریانس نمونه باید رابطه نخست را داشته باشد.
به طور کلی برای محاسبه واریانس در متلب یا همان لنگر مرکزی دوم از دستور var استفاده میشود. برای حالتی که اعداد nan را بخواهیم حذف کنیم از دستور nanvar میتوانیم استفاده کنیم.
شما میتوانید انواع پروژهای کاربردی (بخصوص برای دانشجویان مهندسی) نرمافزار متلب را در صفحه « پروژه آماده matlab » مشاهده و دانلود نمایید.
انحراف معیار در متلب – دستور std در متلب
اما شاخصی که اهمیت بیشتری نسبت به واریانس در محاسبات آماری در متلب و مدلهای احتمالاتی دارد، انحراف معیار (Standard Deviation) یا همان جذر واریانس میباشد که پراکندگی دادهها نسبت به میانگین را نشان میدهد. انحراف معیار به دلیل اینکه هم بعد با متغیر تصادفی است میتواند در مقایسه چندین متغیر تصادفی که بعد یکسانی دارند مورد استفاده قرار گیرد.
برای محاسبه انحراف معیار در متلب از دستور std استفاده میشود و برای حذف اعداد تعریف نشده از دستور nanstd در حالت کلی استفاده میشود. به عنوان مثال برای 2000 عدد بصورت یکنواخت بین 10 تا 100 پارمترهای واریانس و انحراف معیار در متلب را بدست میآوریم:
x=unifrnd (10,100,1,2000);
var(x,1) = 654.7821
var(x,0) = 655.1097
std(x) = 25.5951
همانطور که مشاهده میکنید در محاسبه واریانس در متلب برای تعداد نمونههای زیاد هر دو رابطه پاسخ تقریبا یکسانی را نشان میدهند.
محاسبات آماری در متلب: محاسبه ضریب چولگی در متلب – دستور skewness در متلب
در مدلهای احتمالاتی و متغیرهای تصادفی ضریب چولگی (skewness) نشان دهنده میزان تقارن یک متغیر تصادفی حول میانگین میباشد. در شکل زیر ضریب چولگی در حالتهای و تغییر کردن سایر پارامترها را مشاهده میکنید.
مطابق شکل فوق اگر ضریب چولگی مثبت باشد، شکل به سمت چپ اصطلاحا skewness دارد و اگر ضریب چولگی منفی باشد، شکل به سمت راست skewness خواهد داشت. در صورتی که این ضریب صفر باشد، این ضریب حول میانگین متقارن خواهد بود مانند توزیع نرمال.
این ضریب بصورت زیر محاسبه میشود:
برای محاسبه ضریب چولگی در متلب از دستور skewness استفاده میشود. به عنوان مثال برای یک میلیون داده از یک توزیع نرمال با میانگین 1 و انحراف معیار 2 میخواهیم این ضریب را محاسبه کنیم:
y=1+2*randn (1,1000000);
skewness(y) = -9.6266e-04
همانطور که مشاهده میکنید در محاسبه ضریب چولگی در متلب به دلیل اینکه توزیع نرمال توزیع متقارن است این ضریب به عدد صفر بسیار نزدیک میباشد.
اگر در تعریف اعداد تصادفی در متلب با توزیع نرمال مشکل دارید، حتما مقاله تولید عدد تصادفی را که در بالا معرفی شده است مطالعه نمایید.
محاسبات آماری در متلب: محاسبه ضریب کورتوسیس در متلب – دستور kurtosis در متلب
در مدلسازی احتمالاتی ضریب کورتوسیس (kurtosis) معیاری از مسطح بودن تابع توزیع میباشد. هر چه مقدار ضریب کوتوسیس بیشتر باشد، تغییرات یک مقدار تصادفی بیشتر خواهد بود.
ضریب کورتوسیس برای توزیع یکنواخت عدد 1.8، برای توزیع نرمال عدد 3 و برای توزیع رایلی عدد 6 میباشد (که بیشترین مقدار این ضریب را در بین توزیعهای رایج داراست.)
این ضریب بصورت زیر محاسبه میشود:
برای محاسبه ضریب کورتوسیس در متلب از دستور kurtosis استفاده میشود. به عنوان مثال برای توزیع نرمال با میانگین 1 و انحراف معیار 2 خواهیم داشت:
y=1+2* randn (1,1000000);
kurtosis(y) = 3.0044
همانطور که مشاهده میکنید مطابق مطلب گفته شده این ضریب به عدد 3 نزدیک میباشد. در تعریفی دیگر از فرمول فوق عدد 3 را کم میکنند که در آن تعریف این ضریب به نسبت توزیع نرمال سنجیده میشود.
محاسبات آماری در متلب: محاسبه کواریانس در متلب – دستور cov در متلب
مفهوم کواریانس برای دو متغیر تصادفی که برحسب هم ترسیم شدهاند را در شکل زیر مشاهده میکنید. تغییرات دو متغیر را نسبت به هم مشاهده میکنید.
کواریانس برای دو متغیر تصادفی X و Y بصورت زیر تعریف میشود. همچنین رابطه سوم محاسبه ماتریس کواریانس در متلب را نشان میدهد.
برای محاسبه ماتریس کواریانس در متلب از دستور cov استفاده میشود. اگر دستور cov بصورت تک ورودی فراخوانی شود همان واریانس در عمل محاسبه خواهد شد.
در محاسبه ماتریس کواریانس به صورت فوق عمل خواهد شد. دقت شود که در محاسبه ماتریس کواریانس در متلب حتما باید سایز هر دو بردار متغیر تصادفی با هم برابر باشد.
x=unifrnd (10,100,1,2000);
y=1+2*randn (1,2000);
cov (y, x) =
[ 4.0612 -0.7143 ; -0.7143 661.1731 ]
درایههای رو قطر اصلی ماتریس کواریانس در واقع همان واریانس هر متغیر خواهند بود.
برای یک ماتریس که هر کدام از ستونهای آن از یکسری مشاهدات از متغیر تصادفی است ماتریس کواریانس، کواریانس دوطرفه بین هر دو ترکیب ستون را محاسبه میکند. برای مثال زیر خواهیم داشت:
A چگونه محاسبه ضریب همبستگی = [1.77 -0.005 3.98; NaN -2.95 NaN; 2.54 0.19 1.01]
C = cov(A,’omitrows’)
C =
0.2964 0.0751 -1.1435
0.0751 0.0190 -0.2896
-1.1435 -0.2896 4.4104
لازم به ذکر است همانطور که در محاسبه میانگین و انحراف معیار گفته شد، چون در ماتریس مشاهدات اعداد تعریف نشده داشتیم و میخواهیم آنها را حذف کنیم از زیردستور omitrows استفاده شده است.
محاسبات آماری در متلب: محاسبه ضریب همبستگی در متلب – دستور corrcoef در متلب
ضریب همبستگی (correlation) بین دو متغیر تصادفی معیاری از وابستگی خطی است. این ضریب چون بدون بعد است میتواند روابط دو به دوی بین متغیرهای تصادفی با ابعاد مختلف را بیان کند. به عنوان مثال وابستگی زیادی بین مقاومت فشاری دو ستون در یک ساختمان وجود دارد که عملا همبستگی مثبت بین آنها وجود دارد و بین بارش برف و دمای هوای یک همبستگی منفی وجود دارد. مطابق شکل زیر:
ضریب همبستگی از طریق روابط زیر محاسبه میشود و ماتریس همبستگی مطابق رابطه سوم در محیط متلب محاسبه میشود:
برای محاسبه ضریب همبستگی در متلب از دستور corrcoef استفاده میشود. به عنوان مثال برای دو متغیر تصادفی X و Y استاندارد نرمال بصورت زیر ضریب همبستگی را محاسبه میکنیم:
X=randn(1,1000);
Y=randn(1,1000);
corrcoef(X,Y) =
1.0000 -0.0017
-0.0017 1.0000
این دستور همچنین دارای خروجیهای بیشتر و زیردستوراتی میباشد که به دلیل اهمیت کم آنها از آوردن آنها صرف نظر کردهایم. اما شما میتوانید با مراجعه به help نرمافزار متلب یا سایت اصلی نرمافزار متلب در صورت نیاز این تنظیمات را مشاهده نمایید.
در پایان امیدوارم این مطلب بتواند محاسبات آماری در متلب را برای شما به طور ساده بیان کند.
دیدگاه شما