فهرست سرفصل‌های R
خانه (HOME) معرفی (Intro) شروع کار (Get Started) سینتکس (Syntax) چاپ (Print) کامنت ها (Comments) متغیرها (Variables) اتصال عناصر (Concatenate Elements) چندین متغیر (Multiple Variables) نام متغیرها (Variable Names) انواع داده (Data Types) اعداد (Numbers) ریاضی (Math) رشته ها (Strings) کاراکترهای فرار (Escape Characters) بولی ها (Booleans) عملگرها (Operators) اگر...وگرنه (If...Else) اگر تو در تو (Nested If) و/یا (And Or) حلقه while (While Loop) حلقه for (For Loop) حلقه تو در تو (Nested Loop) تابع ها (Functions) توابع تو در تو (Nested Functions) بازگشت (Recursion) متغیرهای سراسری (Global Variables) ساختارهای داده (Data Structures) بردارها (Vectors) فهرست ها (Lists) ماتریس ها (Matrices) آرایه ها (Arrays) داده فریم ها (Data Frames) فاکتورها (Factors) ترسیم (Plot) خطی (Line) پراکندگی (Scatterplot) نمودار دایره ای (Pie Charts) نمودار میله ای (Bars) مقدمه آمار (Statistics Intro) مجموعه داده (Data Set) بیشینه و کمینه (Max and Min) میانگین، میانه، نما (Mean Median Mode) میانه (Median) نما (Mode) صدک ها (Percentiles) مثال ها (Examples) کامپایلر (Compiler) تمرین ها (Exercises) آزمون (Quiz) سیلابس (Syllabus) برنامه مطالعه (Study Plan) گواهینامه (Certificate)
نتیجه‌ای برای جستجو یافت نشد.
مستندات زبان برنامه نویسی R

R — ماتریس ها (Matrices)

آخرین بروزرسانی: 1404/08/14

ماتریس ها (Matrices)

«ماتریس (Matrix)» جدول دو بعدی است. سطر دارد و ستون دارد. برای اعداد یا متن هم کار می کند. مثل جدول نمره های کلاس.

ساخت ماتریس با matrix()

با تابع matrix() بساز. با nrow تعداد سطر و با ncol تعداد ستون را بده.

نمونه: ماتریس عددی 3×2

# Create a matrix
thismatrix <- matrix(c(1, 2, 3, 4, 5, 6), nrow = 3, ncol = 2)

# Print the matrix
thismatrix

مشاهده در ادیتور

نکته: تابع c() آیتم ها را پشت سرهم می چسباند.

نمونه: ماتریس رشته ای 2×2

# Create a character matrix
thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Print the matrix
thismatrix

مشاهده در ادیتور

دسترسی به خانه ها

با براکت [] دسترسی بگیر. اول سطر، بعد ستون نوشته می شود.

نمونه: یک خانه خاص

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Row 1, Column 2
thismatrix[1, 2]

مشاهده در ادیتور

نمونه: یک سطر کامل

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Whole row 2
thismatrix[2, ]

مشاهده در ادیتور

نمونه: یک ستون کامل

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Whole column 2
thismatrix[, 2]

مشاهده در ادیتور

چند سطر یا چند ستون

با c() چند ایندکس بده. خروجی زیرماتریس می شود.

نمونه: چند سطر

thismatrix <- matrix(c("apple", "banana", "cherry", "orange", "grape", "pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)

# Rows 1 and 2
thismatrix[c(1, 2), ]

مشاهده در ادیتور

نمونه: چند ستون

thismatrix <- matrix(c("apple", "banana", "cherry", "orange", "grape", "pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)

# Columns 1 and 2
thismatrix[, c(1, 2)]

مشاهده در ادیتور

افزودن ستون و سطر

با cbind() ستون اضافه کن و با rbind() سطر اضافه کن.

نمونه: افزودن ستون

thismatrix <- matrix(c("apple", "banana", "cherry", "orange", "grape", "pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)

# Add a column
newmatrix <- cbind(thismatrix, c("strawberry", "blueberry", "raspberry"))

# Print result
newmatrix

مشاهده در ادیتور

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

نمونه: افزودن سطر

thismatrix <- matrix(c("apple", "banana", "cherry", "orange", "grape", "pineapple", "pear", "melon", "fig"), nrow = 3, ncol = 3)

# Add a row
newmatrix <- rbind(thismatrix, c("strawberry", "blueberry", "raspberry"))

# Print result
newmatrix

مشاهده در ادیتور

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

حذف سطر و ستون

با اندیس منفی در c() حذف کن. سطر و ستون را جداگانه بده.

نمونه: حذف سطر 1 و ستون 1

thismatrix <- matrix(c("apple", "banana", "cherry", "orange", "mango", "pineapple"), nrow = 3, ncol = 2)

# Remove first row and first column
thismatrix <- thismatrix[-c(1), -c(1)]

# Print result
thismatrix

مشاهده در ادیتور

جستجوی آیتم و ابعاد

برای وجود آیتم از %in% استفاده کن. برای ابعاد از dim() کمک بگیر.

نمونه: آیا "apple" وجود دارد؟

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Membership test
"apple" %in% thismatrix

مشاهده در ادیتور

نمونه: تعداد سطر و ستون

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Rows and columns
dim(thismatrix)

مشاهده در ادیتور

نکته: تعداد کل خانه ها برابر سطر ضرب در ستون است.

طول ماتریس

تابع length() تعداد کل خانه ها را می دهد. برای 2×2 برابر 4 است.

نمونه: length ماتریس

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Total cells
length(thismatrix)

مشاهده در ادیتور

حلقه روی ماتریس

با دو حلقه for بچرخ. اول سطرها، سپس ستون ها را برو.

نمونه: چاپ تک تک خانه ها

thismatrix <- matrix(c("apple", "banana", "cherry", "orange"), nrow = 2, ncol = 2)

# Nested loops over matrix
for (rows in 1:nrow(thismatrix)) {
  for (columns in 1:ncol(thismatrix)) {
    print(thismatrix[rows, columns])
  }
}

مشاهده در ادیتور

ترکیب دو ماتریس

با rbind() سطری و با cbind() ستونی ترکیب کن.

نمونه: ترکیب سطری و ستونی

# Two 2x2 matrices
Matrix1 <- matrix(c("apple", "banana", "cherry", "grape"), nrow = 2, ncol = 2)
Matrix2 <- matrix(c("orange", "mango", "pineapple", "watermelon"), nrow = 2, ncol = 2)

# Combine by rows
Matrix_Combined <- rbind(Matrix1, Matrix2)
Matrix_Combined

# Combine by columns
Matrix_Combined <- cbind(Matrix1, Matrix2)
Matrix_Combined

مشاهده در ادیتور

گام های تمرینی

  1. یک ماتریس 3×3 بساز و چاپ کن.
  2. سطر دوم و ستون اول را بگیر.
  3. یک ستون جدید با cbind() اضافه کن.
  4. خانه خاصی را جستجو و نتیجه را ببین.
  5. با دو حلقه همه خانه ها را چاپ کن.

جمع بندی سریع

  • ماتریس جدول دو بعدیِ سطر×ستون است.
  • matrix() می سازد؛ nrow و ncol اندازه می دهند.
  • دسترسی با [row, col] انجام می شود.
  • cbind و rbind برای افزودن و ترکیب هستند.
  • dim و length ابعاد و کل خانه ها را می دهند.