#بردارها
برای ساخت بردارهامی توان دستورات زیر را به کاربرد که معادل هم هستند
y <- c(8,3,5)
assign("x",c(8,3,5))
برای تولید اعداد متوالی از عملگر":" میتوان استفاده کرد
n <- 1:10
برای تولید دنباله از اعداد از دستور زیر میتوان استفاده کرد
seq(from=a,by=b,length=c)
برای تکراریک بردار از تابع rep() به صورت زیراستفاده می کنیم
rep(x,each=a,time=b)
برای تولید نمونه تصادفی از تابع sample() به صورت زیر استفاده می کنیم
sample(x,size,replace,prop)
@R_Experts
برای ساخت بردارهامی توان دستورات زیر را به کاربرد که معادل هم هستند
y <- c(8,3,5)
assign("x",c(8,3,5))
برای تولید اعداد متوالی از عملگر":" میتوان استفاده کرد
n <- 1:10
برای تولید دنباله از اعداد از دستور زیر میتوان استفاده کرد
seq(from=a,by=b,length=c)
برای تکراریک بردار از تابع rep() به صورت زیراستفاده می کنیم
rep(x,each=a,time=b)
برای تولید نمونه تصادفی از تابع sample() به صورت زیر استفاده می کنیم
sample(x,size,replace,prop)
@R_Experts
seq
from=نقطه شروع
by=طول گام "قدر نسبت
length=تعداد جملات
to=نقطه پايان
rep:
time=كلا اينقد تكرار كن
each= هر كدوم از عناصر رو اينقد تكرار كن
@R_Experts
from=نقطه شروع
by=طول گام "قدر نسبت
length=تعداد جملات
to=نقطه پايان
rep:
time=كلا اينقد تكرار كن
each= هر كدوم از عناصر رو اينقد تكرار كن
@R_Experts
#عملیات_یر_روی_بردارها
برای مرتب کردن یک بردار دستورا ت زیر را داریم
rort(y)
rev(sort(y))
برای فراخوانی ویا کار برروی عضویاعضوهایی از یک بردارازعملگر“[]" استفاده می شود
X[a]
X[-a]
بردارکارکترها نیزهماننداعدادبااستفاده ازتابعc()ساخته می شود.برای ایجادیک
بردارازکاراکترهادستور از دستور زیر استفاده می شود که در آن Sep مشخص
می کند که کاراکترهاواعدادباچه کاراکتری از هم جداشوند:
paste(“x”,c(),sep=“”)
برای تولیدبردارهایی ازحرف ازبردارهای lettersوLETTERS می توان استفاده کرد که هر کدام شامل 26 حرف بزرگ وکوچک لاتین است.
@R_Experts
برای مرتب کردن یک بردار دستورا ت زیر را داریم
rort(y)
rev(sort(y))
برای فراخوانی ویا کار برروی عضویاعضوهایی از یک بردارازعملگر“[]" استفاده می شود
X[a]
X[-a]
بردارکارکترها نیزهماننداعدادبااستفاده ازتابعc()ساخته می شود.برای ایجادیک
بردارازکاراکترهادستور از دستور زیر استفاده می شود که در آن Sep مشخص
می کند که کاراکترهاواعدادباچه کاراکتری از هم جداشوند:
paste(“x”,c(),sep=“”)
برای تولیدبردارهایی ازحرف ازبردارهای lettersوLETTERS می توان استفاده کرد که هر کدام شامل 26 حرف بزرگ وکوچک لاتین است.
@R_Experts
#if
#دستور_شرطی
دستور شرطی اگر-انگاه
بدین مفهوم که #اگر شرطمون برقرار شد #انگاه دستور جلویی را انجام بده
If(condition){command}#else
#نقیض_شرط
بدین مفهوم که #اگر شرط برقرار نباشد #انگاه دستور مقابلش رو انجام بده
else{command}#مثال_دستور_شرطی
👈دستوری بنوسید که زوج یا فرد بودن متغیر را تعیین کند و در خروجی چاپ کند
x<-10
If(x%%2==0){print("zoj ast")} else{print("fard ast")}@R_Experts
#for
#حلقه
حلقه دستوراتی که برایش نوشته شده را به تعداد تعریف شده تکرار میکند
شکل کلی ان به صورت زیر است:
#مثال_حلقه
مجموع اعداد از یک تا 10 را بنویسید
یا برنامه زیر توان دو اعداد 1:5
را چاپ میکند
مثال فوق رو به چندین روش مختلف میشه انجامش داد حتی با اضافه کردن دستور شرطی که اموزشش رو دادیم
خودتون تمرین کنید و در صورت برخورد با اشکال مطرح كنيد.
@R_Experts
#حلقه
حلقه دستوراتی که برایش نوشته شده را به تعداد تعریف شده تکرار میکند
شکل کلی ان به صورت زیر است:
for(i in 1:n){
دستورات
}#مثال_حلقه
مجموع اعداد از یک تا 10 را بنویسید
rm(list=ls())
s<-0
for(i in 1:10){
s<- s+i
}
s
یا برنامه زیر توان دو اعداد 1:5
را چاپ میکند
n=5
x = rep(0,n)
for (j in 1:n)
{
x[j] = j^2
}
x
مثال فوق رو به چندین روش مختلف میشه انجامش داد حتی با اضافه کردن دستور شرطی که اموزشش رو دادیم
خودتون تمرین کنید و در صورت برخورد با اشکال مطرح كنيد.
@R_Experts
#مثالـحلقهـfor
مجموع اعداد زوج از یک تا n را محاسبه کنید
دستورش به شکل زیر است که در زیر تک تک دستورات رو براتون توضیح میدیم
اولا حلقه اعداد یک تا 100 رو با متغیر i شمارش میکنه بعدش ما یک متغیر برای اینکه مجموع رو تو اون دخیره کنیم معرفی میکنیم (متغیر s) مقدار اولیه s عدد صفر هست که هربار با عدد زوج جمع میشه
این تابع هم خروجیش اعداد 0 و 1 هست که اگر شرط داخلش درست باشه عدد 1 رو میده در غیر اینصورت عدد 0 رو میده
@R_Experts
مجموع اعداد زوج از یک تا n را محاسبه کنید
دستورش به شکل زیر است که در زیر تک تک دستورات رو براتون توضیح میدیم
s<-0
for(i in 1:100){s<-s+I(i%%2==0)*i
}
s
اولا حلقه اعداد یک تا 100 رو با متغیر i شمارش میکنه بعدش ما یک متغیر برای اینکه مجموع رو تو اون دخیره کنیم معرفی میکنیم (متغیر s) مقدار اولیه s عدد صفر هست که هربار با عدد زوج جمع میشه
I()
این تابع هم خروجیش اعداد 0 و 1 هست که اگر شرط داخلش درست باشه عدد 1 رو میده در غیر اینصورت عدد 0 رو میده
@R_Experts
#while
ی نوع حلقه "loop" به حساب میاد ، و تا زمانی که ارزش منطقی اون گزاره داخلی درست باشه این حلقه ادامه داره ،
مثلا
از یک شروع میشه و تا زمانی که از 5 کمتره به مقدار اولیه "1" یکی اضافه میکنه
و با دستور
همه عناصری که داخل این حلقه تولید شدن رو برای ما چاپ میکنه
در داخل حلقه به معنی خارج شدن است
در داخل حلقه به معنی ادامه دادن است
@R_Experts
ی نوع حلقه "loop" به حساب میاد ، و تا زمانی که ارزش منطقی اون گزاره داخلی درست باشه این حلقه ادامه داره ،
مثلا
x <- 1
while(x < 5) {x <- x+1; print(x);}
x
از یک شروع میشه و تا زمانی که از 5 کمتره به مقدار اولیه "1" یکی اضافه میکنه
و با دستور
print( )
همه عناصری که داخل این حلقه تولید شدن رو برای ما چاپ میکنه
#break
در داخل حلقه به معنی خارج شدن است
#next
در داخل حلقه به معنی ادامه دادن است
@R_Experts
مقدار اولیه 2 ، برای کمتر از 7 ها یکی اضافه کن به تعداد کل این اعدادی که تو این شرط صدق میکنند کاراکتر بردار رو چاپ کن :)
@R_Experts
@R_Experts
#NA
به معنی داده گمشده میباشد در سطوح پیشرفته کار با داده گمشده متفاوت است ما در اینجا فقط داه گمشده را در نظر نمیگیریم
در برنامه زیر
دستور
ارزش منطقی داده های بردار
را مشخص میکند
چون این بردار دارای داده گمشده است
نمیتوان کاری روی ان صورت داد از این رو
به حذف داده گمشده اررش درست میدهد
و باعث میشود داده گمشده در نظر گرفته نشود از این رو برداری با 4 عنصر خواهیم داشت.
@R_Experts
به معنی داده گمشده میباشد در سطوح پیشرفته کار با داده گمشده متفاوت است ما در اینجا فقط داه گمشده را در نظر نمیگیریم
در برنامه زیر
دستور
is.na(y)
ارزش منطقی داده های بردار
y
را مشخص میکند
چون این بردار دارای داده گمشده است
نمیتوان کاری روی ان صورت داد از این رو
na.rm=TRUE
به حذف داده گمشده اررش درست میدهد
و باعث میشود داده گمشده در نظر گرفته نشود از این رو برداری با 4 عنصر خواهیم داشت.
@R_Experts
#برابر_قرار_دادن_اعداد_اعشاری
نکته ای که بسیار مهم در نرم افزار R وجود دارد که کمتر دیده ایم از ان یاد شود
ودر مباحثی مانند آنالیز عددی بیشتر رخ می دهد این است که نرم افزار R عدد اعشاری را که از اعمال ریاضی بدست میاد برابر خود ان عدد به دست امده نمی داند وبرای این کار باید از دستور
استفاده کرد.
شاید با ذکر یک #مثال بتوان مفهوم را بهتر درک کرد
@R_Experts
نکته ای که بسیار مهم در نرم افزار R وجود دارد که کمتر دیده ایم از ان یاد شود
ودر مباحثی مانند آنالیز عددی بیشتر رخ می دهد این است که نرم افزار R عدد اعشاری را که از اعمال ریاضی بدست میاد برابر خود ان عدد به دست امده نمی داند وبرای این کار باید از دستور
all.equall()
استفاده کرد.
شاید با ذکر یک #مثال بتوان مفهوم را بهتر درک کرد
@R_Experts