|R| Experts – Telegram
|R| Experts
1.05K subscribers
376 photos
35 videos
58 files
205 links
@R_Experts
🔴آمار علم جان بخشیدن به داده‌هاست.
🔷ارتباط با ما
@iamrezaei
لینک یوتیوب و اینستاگرام و ویرگول:
https://zil.ink/expertstv
Download Telegram
#دیتا_فریم_ها

دیتا فریم ها از لحاظ ساختار شباهت زیادی به ماتریس ها دارند .یک دیتا فریم را می توان ماتریسی

در نظر گرفت که ستون های ان بردار هایی با ساختار های مختلف هستند

یک دیتا فریم در واقع لیستی از بردارهای هم اندازه و لا ساختار های متفاوت است
@R_Experts
برای ساختن یک دیتا فریم از تابع

data.frame()

استفاده میشود .دراین تابع می بایست نام مورد نظر برای هر ستون را به همراه بردار

شامل داده های ان ستون وارد کنیم

@R_Experts
ابتدا پکیج MASS
را نصب و فراخوانی کنید

> library(MASS)      # load the MASS package

> painters 

              Composition Drawing Colour Expression School 

Da Udine               10       8     16          3      A 

Da Vinci               15      16      4         14      A 

Del Piombo              8      13     16          7      A 

Del Sarto              12      16      9          8      A 

Fr. Penni               0      15      8          0      A 

Guilio Romano          15      16      4         14      A 


این داده ها مربوط به نقاشان کلاسیک قرن 18 میباشند که در رسته های ترکیب بندی ،رنگ بندی،... دسته بندی شده اند

> painters$School 

 [1] A A A A A A A A A A B B B B B B C C C C C C D D D D 

[27] D D D D D D E E E E E E E F F F F G G G G G G G H H 

[53] H H 

Levels: A B C D E F G H 


با این دستور میتوانیم مشاهده کنیم که سطح جایی که اموزش دیدن چگونه است
که در 8 سطح میباشد

@R_Experts
> school = painters$School      # the painter schools 
> school.freq = table(school) # apply the table function
> school.freq
school
A B C D E F G H
10 6 6 10 7 4 7 4
> cbind(school.freq)
school.freq
A 10
B 6
C 6
D 10
E 7
F 4
G 7
H 4


همان طور که مشاهده میکنید جدول فراوانی بین تعداد نقاشان و سطح جایی که اموزش دیدن رو اوردیم و به یک جدول تبدیل کردیم
و این جدول رو سپس ستونی نمودیم
مثلا
A 10
نشان دهنده ی این است که در سطح اموزش A
10 نفر اموزش دیدند


@R_Experts
> school.relfreq = school.freq / nrow(painters) 

> school.relfreq 

school 

       A        B        C        D        E        F 

0.185185 0.111111 0.111111 0.185185 0.129630 0.074074 

       G        H 

0.129630 0.074074

> barplot(school.freq)  

> colors = c("red", "yellow", "green", "violet", 

+   "orange", "blue", "pink", "cyan") 

> barplot(school.freq,         # apply the barplot function 

+   col=colors)                # set the color palette 


ابتدا فراوانی نسبی این داده ها را محاسبه و سپس نمودار هیستوگرام انها را رسم کرد هایم که نمودار ها را در پایین مشاهده میکنید 👇👇👇

@R_Experts
> pie(school.freq)      
> colors = c("red", "yellow", "green", "violet",
+ "orange", "blue", "pink", "cyan")
> pie(school.freq, # apply the pie function
+ col=colors) # set the color palette


نمودار دایره ای مربوطه👇👇👇👇

@R_Experts
#Solution_Practice_3

> cc<-c(1,2,3,4,5,2,1,2,3,4,3,2,1,2,3,4,3,2,1,2,5,4,3,2,1)
> A<-matrix(cc,5,5)
> A
[,1] [,2] [,3] [,4] [,5]
[1,] 1 2 3 4 5
[2,] 2 1 2 3 4
[3,] 3 2 1 2 3
[4,] 4 3 2 1 2
[5,] 5 4 3 2 1
> b<-matrix(c(7,-1,-3,5,17),5,1)
> b
[,1]
[1,] 7
[2,] -1
[3,] -3
[4,] 5
[5,] 17
> x<-solve(A)%*%b
> x
[,1]
[1,] -2
[2,] 3
[3,] 5
[4,] 2
[5,] -4
#factor_function
فرم کلی این تابع به صورت :
factor(x = character(), levels, labels = levels,
exclude = NA, ordered = is.ordered(x))

که از یک رشته شی محتويات انها را خارج و در
Levels
قرار میدهد و میتوان به انها برچسب نیز نسبت داد ، و ordered ترتیب را برای ما مشخص میکند

> mons = c("March","April","January","November","January",
+ "September","October","September","November","August",
+ "January","November","November","February","May","August",
+ "July","December","August","August","September","November",
+ "February","April")
> mons = factor(mons)
> table(mons)
mons
April August December February January July
2 4 1 2 3 1
March May November October September
1 1 5 1 3

ordered=TRUE

ترتیب اعضای فاکتور را مشخص میکند

> fert = c(10,20,20,50,10,20,10,50,20)
> fert = factor(fert,levels=c(10,20,50),ordered=TRUE)
> fert
[1] 10 20 20 50 10 20 10 50 20
Levels: 10 < 20 < 50


@R_Experts
#abs


abs(x)



x: Numeric value, array or vector

> abs(-1)

[1] 1


> abs(20)

[1] 20


> abs(0)

[1] 0


> x <- c(-2,4,0,45,9,-4)
> abs(x)

[1] 2 4 0 45 9 4


> x <- matrix(c(-3,5,-7,1,-9,4),nrow=3,ncol=2,byrow=TRUE)
> abs(x[1,])

[1] 3 5


> abs(x[,1])

[1] 3 7 9



@R_Experts
#atan

atan() function returns the radian arctangent of number data.

atan(x)



x: Numeric value, array or vector

> atan(1)

[1] 0.7853982


> atan(0)

[1] 0


> atan(0.5)

[1] 0.4636476


> x <- c(1, 0, 0.5)
> atan(x)

[1] 0.7853982 0.0000000 0.4636476


@R_Experts
#beta


beta() function return the beta function and the natural logarithm of the beta function.

B(a,b) = Γ(a)Γ(b)/Γ(a+b)

beta(a, b)

a,b: non-negative numeric vectors

> beta(4,9)

[1] 0.0005050505



> x <- c(3,6, 4)
> y <- c(7,4, 12)
> beta(x,y)

[1] 0.0039682540 0.0019841270 0.0001831502


@R_Experts
#choose()



choose(n,r)


n: n elements
r: r subset elements
...

nCr = n!/(r! * (n-r)!)

> choose(5,2)

[1] 10


> choose(2,1)

[1] 2


@R_Experts
#log( )

function computes natural logarithms (Ln) for a number or vector. log10 computes common logarithms (Lg).log2 computes binary logarithms (Log2). log(x,b) computes logarithms with base b.

>log(5)     #ln5

[1] 1.609438


>log10(5) #lg5

[1] 0.69897


>log2(5) #log25

[1] 2.321928


>log(9,base=3) #log39 = 2

[1] 2


>x <- rep(1:12)
>x

[1] 1 2 3 4 5 6 7 8 9 10 11 12


>log(x)

[1] 0.0000000 0.6931472 1.0986123 1.3862944 1.6094379 1.7917595 1.9459101
[8] 2.0794415 2.1972246 2.3025851 2.3978953 2.4849066


>log(x,6)

[1] 0.0000000 0.3868528 0.6131472 0.7737056 0.8982444 1.0000000 1.0860331
[8] 1.1605584 1.2262944 1.2850972 1.3382908 1.3868528

@R_Experts
log10() function computes base 10 logarithm.

log10(x)



x: numeric vector


> log10(100)

[1] 2


> x <- c(100,1000, 10000)
> log10(x)

[1] 2 3 4


@R_Experts
#exp


exp(x) function compute the exponential value of a number or number vector, ex.

> x <- 5

> exp(x)


[1] 148.4132



> y <- rep(1:20)

> exp(y)


         [,1]     [,2]     [,3]     [,4]      [,5]

[1,] 2.718282 20.08554 148.4132 1096.633  8103.084

[2,] 7.389056 54.59815 403.4288 2980.958 22026.466


expm1() function computes exp() minus 1:»>حاصل منهای 1

> expm1(5)


[1] 147.4132



> expm1(rep(1:20))


         [,1]     [,2]     [,3]     [,4]      [,5]

[1,] 1.718282 19.08554 147.4132 1095.633  8102.084

[2,] 6.389056 53.59815 402.4288 2979.958 22025.466


@R_Experts
#factorial

factorial() function computes the factorial of a number.

factorial(x)


x: numeric vector


> factorial(2)  #2 × 1

[1] 2


> factorial(1) #1 × 1

[1] 1


> factorial(3) #3 × 2 × 1

[1] 6


> factorial(4) #4 × 3 × 2 × 1

[1] 24


> factorial(c(4,3,2))

[1] 24 6 2


@R_Experts