آر

آموزش لیست ها در R به زبان ساده

اساطیر زبان

لیست ها اشیائی در R هستند که شامل عناصری از انواع متفاوتی مانند – اعداد، رشته ها، بردارها و لیست دیگر درون آن- می باشند. یک لیست می تواند یک ماتریس یا یک تابع را به عنوان عناصر خود شامل شود. لیست ها با استفاده از تابع ()List ایجاد می شود.

ایجاد یک لیست

در ادامه مثالی آورده شده است که نشان می دهد چگونه می توان یک لیست ایجاد کرد که شامل رشته ها، اعداد و مقادیر منطقی باشد.

# Create a list containing strings, numbers, vectors and a logical

# values.

list_data <- list(“Red”, “Green”, c(21,32,11), TRUE, 51.23, 119.1)

print(list_data)

زمانی که کد بالا را اجرا کنیم؛ نتایج زیر ایجاد می شود:

[[۱]]

[۱] “Red”

[[۲]]

[۱] “Green”

[[۳]]

[۱] ۲۱ ۳۲ ۱۱

[[۴]]

[۱] TRUE

[[۵]]

[۱] ۵۱٫۲۳

[[۶]]

[۱] ۱۱۹٫۱

نام گذاری اعضای لیست

اعضای لیست را می توان نام گذاری کرد و با استفاده از نامشان می توان به آنها دست یافت.

# Create a list containing a vector, a matrix and a list.

list_data <- list(c(“Jan”,”Feb”,”Mar”), matrix(c(3,9,5,1,-2,8), nrow = 2),

list(“green”,12.3))

# Give names to the elements in the list.

names(list_data) <- c(“1st Quarter”, “A_Matrix”, “A Inner list”)

# Show the list.

print(list_data)

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر ایجاد می شود:

$`۱st_Quarter`

[۱] “Jan” “Feb” “Mar”

$A_Matrix

[,۱] [,۲] [,۳]

[۱,] ۳ ۵ -۲

[۲,] ۹ ۱ ۸

$A_Inner_list

$A_Inner_list[[1]]

[۱] “green”

$A_Inner_list[[2]]

[۱] ۱۲٫۳

دسترسی به عناصر یک لیست

با استفاده از شاخص اعضای یک لیست می توان به آنها دست یافت. در مورد لیست های نام گذاری شده؛ می توان با استفاده از نام اعضا نیر به آنها دست پیدا کرد.

ما به استفاده از لیستی که در مثال بالا است؛ ادامه می دهیم:

# Create a list containing a vector, a matrix and a list.

list_data <- list(c(“Jan”,”Feb”,”Mar”), matrix(c(3,9,5,1,-2,8), nrow = 2),

list(“green”,12.3))

# Give names to the elements in the list.

names(list_data) <- c(“1st Quarter”, “A_Matrix”, “A Inner list”)

# Access the first element of the list.

print(list_data[1])

# Access the thrid element. As it is also a list, all its elements will be printed.

print(list_data[3])

# Access the list element using the name of the element.

print(list_data$A_Matrix)

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر به دست می آید:

$`۱st_Quarter`

[۱] “Jan” “Feb” “Mar”

$A_Inner_list

$A_Inner_list[[1]]

[۱] “green”

$A_Inner_list[[2]]

[۱] ۱۲٫۳

[,۱] [,۲] [,۳]

[۱,] ۳ ۵ -۲

[۲,] ۹ ۱ ۸

به کار گرفتن اعضای یک لیست

ما می توانیم عناصر لیست را همان طور که در زیر نشان داده شده است؛ اضافه یا حذف کنیم. ما می توانیم عناصر را فقط به انتهای لیست اضافه کنیم؛ همچنین فقط عناصر انتهای یک لیست را می توانیم حذف نماییم. اما ما می توانیم هر عنصری را آپدیت کنیم.

# Create a list containing a vector, a matrix and a list.

list_data <- list(c(“Jan”,”Feb”,”Mar”), matrix(c(3,9,5,1,-2,8), nrow = 2),

list(“green”,12.3))

# Give names to the elements in the list.

names(list_data) <- c(“1st Quarter”, “A_Matrix”, “A Inner list”)

# Add element at the end of the list.

list_data[4] <- “New element”

print(list_data[4])

# Remove the last element.

list_data[4] <- NULL

# Print the 4th Element.

print(list_data[4])

# Update the 3rd Element.

list_data[3] <- “updated element”

print(list_data[3])

زمانی که ما کد بالا را اجرا می کنیم؛ نتیجه زیر به دست می آید:

[[۱]]

[۱] “New element”

$<NA>

NULL

$`A Inner list`

[۱] “updated element”

ادغام کردن لیست ها

شما می توانید لیست های بسیاری را در یک لیست ادغام کنید. این کار با قرار دادن تمام لیست ها در یک تابع list() انجام می شود.

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

زمانی که کد بالا را اجرا می کنیم؛ نتیجه زیر حاصل می شود:

[[۱]]

[۱] ۱

[[۲]]

[۱] ۲

[[۳]]

[۱] ۳

[[۴]]

[۱] “Sun”

[[۵]]

[۱] “Mon”

[[۶]]

[۱] “Tue”

تبدیل کردن لیست به وکتور

یک لیست می تواند به یک وکتور تبدیل شود؛ به صورتی که عناصر آن وکتور را می توان برای به کار گرفتن در آینده استفاده کرد. تمام عملیات های حسابی روی بردارها را می توان بعد از آن که لیست به بردارها تبدیل شد؛ اعمال کرد. برای انجام این تبدیل، ما از تابع ()unlist استفاده می کنیم. این تابع، لیستی را به عنوان ورودی اتخاذ می کند و یک بردار را تولید می کند.

# 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-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست