|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
#Example_2

# Create two lists.

list1 <- list(1,2,3)

list2 <- list("Sun","Mon","Tue")


# Merge the two lists.

merged.list <- c(list1,list2)


# Print the merged list.

print(merged.list)



[[1]]

[1] 1


[[2]]

[1] 2


[[3]]

[1] 3


[[4]]

[1] "Sun"


[[5]]

[1] "Mon"


[[6]]

[1] "Tue"


merged.list
دو لیست را کنار یکدیگر قرار میدهد و در یک لیست ذخیره میکند
#Example_3

# Create lists.

list1 <- list(1:5)

print(list1)


list2 <-list(10:14)

print(list2)


# Convert the lists to vectors.

v1 <- unlist(list1)

v2 <- unlist(list2)


print(v1)

print(v2)


# Now add the vectors

result <- v1+v2

print(result)



[[1]]

[1] 1 2 3 4 5


[[1]]

[1] 10 11 12 13 14


[1] 1 2 3 4 5

[1] 10 11 12 13 14

[1] 11 13 15 17 19


تابع
unlist
لیست را به ماهیت اولیه اش برمیگرداند

@R_Experts
#آرایه_ها_و_ماتریس

آرایه ها یکی از اشیا موجود در R برای کار با داده ها هستند که ما را قادر می سازند
تا داده ها را به صورت چند بعدی نگه داری کرده و با انها کار کنیم .
در حالت خاص
#بردار ها
ارایه های یک بعدی و
#ماتریس ها
آرایه های دو بعدی هستند.

ساده ترین را ه ساختن یک ارایه استفاده از تابع

dim()

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

برای بعد آرایه به تابع
dim()

تخصیص دهیم.
#مثال_آرایه
 z <- 1:18

dim(z) <- c(2,3,3)

z


#روش_دیگر_ساختن_آرایه_و_ماتریس استفاده از تابع
array()

است .برای ساخت یک آرایه از این روش بردار داده ها و بردار بعد را در تابع مشخص میکنیم.

#مثال
x <- 1:24

array(x,c(3,6))


@R_Experts
aperm()

این تابع جهت ترانهاده کردن یک آرایه به کا رمی رود.


#مثال
 x <- 1:24

A <- array(x,c(3,6))

aperm(A)


@R_Experts
#ماتریس

علاوه بر تابع
dim()
برای ساختن ماتریس می توان از تابع
#matrix()
به شکل زیر استفاده کرد
matrix( c() , ncol=a, nrow=b,byrow=T or F )
که در ان
بردار
c( )
که میخوایم به ماتریس تبدیل کنیم
Ncol
تعداد ستون ها
Nrow
تعداد سطر ها
Byrow =T
نيز ترتيب پر
کردن
ماتریس را به صورت سطري انجام می دهد بدین معنی که ابتدا تمام درایه های سطر اول پر می شود


سپس به سطر دوم می رود و ...
@R_Experts
#کار_بر_روی_ماتریس_ها


برای نام گذاری سطر ها
rownames(c())

برای نام گذاری ستون ها
colnames(c())

ترانهاده_یک_ماتریس
t()

ضرب_ماتریس_ها
A %*% B 

برای محاسبه معکوس یک ماتریس و یا حل یک معادله ی ماتریس از تابع
solve()

استفاده میشود .
اگر در تابع فقط ماتریس را وارد کنیم معکوس ماتریس را به ما می دهد

ولی اگر علاوه بر ماتریس بردار جواب را نیز وارد کنیم جواب معادله
 AX=b 

را می دهد.

@R_Experts
#تمرين_٢
برنامه اي بنويسيد كه ١٠٠٠ عدد تصادفي از توزيع دلخواه
"rnorm(1000)"
بگيرد و انها را در ماتريسي

10(row)*100(col)
قرار داده و واريانس
var( )

هر ستون را محاسبه

و انها را در خروجي در يك ماتريس

100(row)*1
قرار دهد
سپس با مقايسه هر كدام از درايه هاي ماتريس "همه درايه ها " اگر
ai1<aj1
عدد صفر را تخصيص و اگر
ai1>aj1
بود عدد 1 را تخصيص دهد
"ترتيب قرار گيري مهم است يعني اينكه
a11,a21
a21,a11
متفاوت است و هر دو مقايسه بايد صورت گيرد،"
و پس از پايان مجموع اين اعداد را در يك شي دخيره كند.

جواب تمرين در صورتي كه جواب صحيح ارسال شود در كانال گذاشته ميشود

@Analyst20
@javad_vhd
@hamedrezaei2

با تشكر 💎🌷💎

https://telegram.me/R_Experts
#سرگرمی

با دستور ساده زیر می توان #رنگین_کمان کشید


n <- 2000⁨
pie(rep(1,n ),labels = "",border = NA,col = rainbow(n),main = " R_Experts")


@R_Experts
#ginv( )
تابعی در پکیج
MASS
برای محاسبه ی معکوس ماتریس به کار میرود که
معکوس تعمیم یافته هست و زمانی که ماتریس مربعی نباشد میتوان از این دستور استفاده کرد و معکوس ماتریس را بدست اورد
#Example

dat1 <- c(3,4,5,2,1,3,6,5,4)
matrix1 <- matrix(dat1, nrow = 3, ncol = 3, byrow = TRUE)
matrix1

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


library(MASS)
ginv(matrix1)

[,1] [,2] [,3]
[1,] -0.4074074 0.3333333 0.25925926
[2,] 0.3703704 -0.6666667 0.03703704
[3,] 0.1481481 0.3333333 -0.18518519
#مقاذیر_ویژه_بردارهای_ویژه
در مثال قبل :
eigen(matrix1)


$values

[1] 11.238947 -2.088872 -1.150075


$vectors

           [,1]       [,2]       [,3]

[1,] -0.6017346 -0.3458537 -0.4307244

[2,] -0.3305706 -0.5288292  0.8445517

[3,] -0.7270754  0.7750644 -0.3181336


@R_Experts
#Example_2
> A <- matrix(c(2,3,-2,1,2,2),3,2)
> A

[,1] [,2]
[1,] 2 1
[2,] 3 2
[3,] -2 2



> is.matrix(A)

[1] TRUE

> is.vector(A)

[1] FALSE

is.matrix( )
is.vector( )

گزاره هاي منطقي هستند
كه ارزش درست يا نادرست ميگيرند.
@R_EXperts
#Example_3
> A = matrix( 
+ c(2, 4, 3, 1, 5, 7), # the data elements
+ nrow=2, # number of rows
+ ncol=3, # number of columns
+ byrow = TRUE) # fill matrix by rows

> A # print the matrix
[,1] [,2] [,3]
[1,] 2 4 3
[2,] 1 5 7
> A[2, 3] # element at 2nd row, 3rd column
[1] 7
> A[2, ] # the 2nd row
[1] 1 5 7
> A[ ,3] # the 3rd column
[1] 3 7
> A[ ,c(1,3)] # the 1st and 3rd columns
[,1] [,2]
[1,] 2 3
[2,] 1 7
> dimnames(A) = list(
+ c("row1", "row2"), # row names
+ c("col1", "col2", "col3")) # column names

> A # print A
col1 col2 col3
row1 2 4 3
row2 1 5 7

> A["row2", "col3"] # element at 2nd row, 3rd column
[1] 7



@R_Experts
#cbind
ترکیب ستونی کنار یکدیگر

> x = cbind(c(10, 20), c("[]", "[]"), c("[[1,2]]","[[1,3]]"))

> x

     [,1] [,2] [,3]     

[1,] "10" "[]" "[[1,2]]"

[2,] "20" "[]" "[[1,3]]"


@R_Experts