در این مطلب با مثال به آموزش ساخت ماتریس در زبان برنامه نویسی R میپردازیم و در ادامه با یه عالمه مثال، نحوه دسترسی به مولفههای ماتریس رو هم یاد میگیریم!
فرض کنید میخواید یک ماتریس 3 در 3 به صورت زیر بسازیم!
[10,2,5], [6,4,1], [14,7,5]
یک یک ماتریس 3 در 3 که در سطر اولش اعداد 10 و 2 و 5 قرار گرفته! در سطر دومش اعداد 6 و 4 و 1! و در سطر آخر هم اعداد 14 و 7 و 5!
برای ساخت یه همچین ماتریسی در زبان برنامه نویسی R قطعه کد زیر رو در نظر بگیرید، تا بعد بیایم و توضیح بدیم!
a <- c(10,2,5,6,4,1,14,7,5) m <- matrix(a,nrow=3,byrow=TRUE) print(m)
در خط اول اومدیم یک بردار شامل اعداد 10 و 2 و …. و 5 (یعنی همون اعداد ماتریس) تعریف کردیم به اسم a!
بذارید قبل از رفتن به توضیح خط بعد، یه سوال بپرسم: در خط اول چندتا عدد توی بردار خودمون تعریف کردیم؟! [بله درسته! 9 تا!]
در خط دوم داریم به کمک تابع matrix، یک ماتریس میسازیم! این تابع matrix یه چندتا ورودی میگیره که الان توضیح میدم!
اولین ورودی این تابع اینه که اصلاً چه عددهایی قراره توووی ماتریس قرار بگیره! یعنی اولین ورودی این تابع مولفههای خود ماتریس است! که مثلاً در کد بالا، ما اومدیم همون a رو بهش دادیم! (که خود a همووون 9 تا عددی است که در خط اول کد تعریف کردیم!)
ورودی دیگهای که این تابع matrix میگیره، nrow است! [مخفف number of row به معنی تعداد سطر!] یعنی رسماً داره میپرسه: خب الان این 9 تا عدد رو توووی چندتا سطر قرار بدم؟! و مثلاً ما اینجا گفتیم اووون اعداد رو در 3 تا سطر قرار بده!
توجه: دیگه زبان برنامه نویسی R بعد از این همه مدت به حدی از شعور رسیده که بفهمه وقتی کلاً 9 تا عدد داریم و 3 تا سطر، دیگه مشخصاً 3تا ستون خواهیم داشت! اما اگر دوست دارید، میتونید صراحتاً تعداد ستون رو به صورت زیر تعیین کنید!
m <- matrix(a,nrow=3,ncol=3,byrow=TRUE)
یکی از ورودیهای دیگهای که داریم byrow است! که این نحوه چیندن اووون 9تا عدد داخل اون ماتریس رو مشخص میکنه! وقتی میگیم byrow=True یعنی سطری بچین! یعنی اعداد رو شروع کن چیندن توی سطر اول، هرچی اضافه اومد رو بچین توی سطر دوم، هرچی اضافه اومد رو بچین توی سطر سوم و الی آخر…!
اگر بگیم byrow=False یعنی ستونی بچین! این هم یعنی اعداد رو بذار توی ستون اول، هرچی اضافه اومد رو بذار توی ستون دوم! هرچی اضافه اومد رو بذار توی ستون سوم و الی ماشاءالله!
پس کلاً در خط 2 داریم همون 9 تا عدد (یعنی همون بردار a) رو در قالب 3 تا سطر و به صورت سطری میچینیم توی ماتریس! و اسم ماتریس رو هم گذاشتیم m!
در خط آخر هم گفتیم همون m رو بیا چاپ کن!
اگر این قطعه کد رو اجرا کنیم، خروجی به صورت زیر خواهد بود!
+ حالا فرض کنید میخوایم به مولفه موجود در سطر اول و ستون سوم دسترسی پیدا کنیم، برای این منظور باید بنویسیم!
print(m[1,3])
خروجی: عدد 5 !
+ فرض کنید میخوایم به مولفه موجود در سطر 2 و ستون 1 دسترسی پیدا کینم، باید بنویسیم!
print(m[2,1])
خروجی: عدد 6 !
+ حالا اگر بخوایم به کل مولفههای سطر 3 دسترسی پیدا کینم، میگیم:
print(m[3,])
اگر توجه کنید بعد از , هیچی نذاشتیم! وقتی هیچی نمیذاریم یعنی هَمَش! یعنی داریم میگیم سطر 3 و همه ستونها!
خروجی:
14 7 5
+ حالا اگر بخوایم به کل مولفههای موجود در ستون 2 اشاره کنیم، باید بنویسیم!
print(m[,2])
در اینجا هم داریم میگیم همه سطرهای و ستون 2!
خروجی:
2 4 7
که همون اعداد ستون دوم است!
+ حالا اگر بخوایم به مولفهای موجود در سطر 1 و 2 و ستون 3 دسترسی پیدا کینم، میگیم!
print(m[c(1,2),3])
خروجی:
5 1
و تا دلتون بخواد از این مثالها میشه زد! ولی فکر میکنم تمام نکاتش رو بررسی کردیم با این مثالها!
آموزش دستور if (ساختار شرطی) در زبان برنامه نویسی R
تعداد دیدگاه | 0 |
تعداد بازدید | 9.8K |
تاریخ انتشار | 02/01/2020 |
تاریخ بروزرسانی | 02/01/2020 |
نویسنده | گروه آموزشی کولاک |