دیتا فریم در زبان R یک جدول یا ساختار آرایهای دوبعدی است که در آن هر ستون شامل مقادیر یک متغیر بوده و هر سطر نمایانگر یک مجموعه از مقادیر تمام ستونهاست.
ویژگیهای اصلی دیتا فریم در زبان R
- 
نام ستونها نباید خالی باشد.
 - 
نام سطرها باید یکتا باشند.
 - 
دادههای ذخیرهشده در دیتا فریم میتوانند از نوع عددی (numeric)، عاملی (factor) یا کاراکتری (character) باشند.
 - 
هر ستون باید شامل تعداد یکسانی داده باشد.
 
ایجاد فریم داده در R
| 
					 1 2 3 4 5 6 7 8 9 10 11  | 
						# ایجاد دیتا فریم emp.data <- data.frame(    emp_id = c (1:5),     emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),     start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # چاپ دیتا فریم			 print(emp.data)   | 
					
| 
					 1 2 3 4 5 6  | 
						 emp_id    emp_name     salary     start_date 1     1     Rick        623.30     2012-01-01 2     2     Dan         515.20     2013-09-23 3     3     Michelle    611.00     2014-11-15 4     4     Ryan        729.00     2014-05-11 5     5     Gary        843.25     2015-03-27  | 
					
بررسی ساختار دیتا فریم
برای مشاهده ساختار دیتا فریم از تابع str() استفاده میکنیم.
| 
					 1 2 3 4 5 6 7 8 9 10 11 12  | 
						# ایجاد دیتا فریم emp.data <- data.frame(    emp_id = c (1:5),     emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),     start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # مشاهده ساختار فریم داده str(emp.data)  | 
					
| 
					 1 2 3 4 5  | 
						'data.frame':   5 obs. of  4 variables:  $ emp_id    : int  1 2 3 4 5  $ emp_name  : chr  "Rick" "Dan" "Michelle" "Ryan" ...  $ salary    : num  623 515 611 729 843  $ start_date: Date, format: "2012-01-01" "2013-09-23" "2014-11-15" "2014-05-11" ...  | 
					
خلاصه آماری دیتا فریم
برای بهدستآوردن خلاصه آماری و ماهیت دادهها از تابع summary() استفاده میکنیم.
| 
					 1 2 3 4 5 6 7 8 9 10 11 12  | 
						# ایجاد دیتافریم emp.data <- data.frame(    emp_id = c (1:5),     emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),     start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # چاپ خلاصه آماری دیتا فریم print(summary(emp.data))  | 
					
| 
					 1 2 3 4 5 6 7  | 
						     emp_id    emp_name             salary        start_date          Min.   :1   Length:5           Min.   :515.2   Min.   :2012-01-01    1st Qu.:2   Class :character   1st Qu.:611.0   1st Qu.:2013-09-23    Median :3   Mode  :character   Median :623.3   Median :2014-05-11    Mean   :3                      Mean   :664.4   Mean   :2014-01-14    3rd Qu.:4                      3rd Qu.:729.0   3rd Qu.:2014-11-15    Max.   :5                      Max.   :843.2   Max.   :2015-03-27  | 
					
استخراج داده از دیتا فریم (Data Frame)
میتوان با استفاده از نام ستون یا اندیسها (index) دادههای خاصی را از فریم داده استخراج کرد.
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13  | 
						# ایجاد فریم داده emp.data <- data.frame(    emp_id = c (1:5),    emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),    start_date = as.Date(c("2012-01-01","2013-09-23","2014-11-15","2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # استخراج ستونهای مشخص result <- data.frame(emp.data$emp_name, emp.data$salary) print(result)  | 
					
| 
					 1 2 3 4 5 6  | 
						  emp.data.emp_name emp.data.salary 1              Rick          623.30 2               Dan          515.20 3          Michelle          611.00 4              Ryan          729.00 5              Gary          843.25  | 
					
استخراج دو سطر اول و تمام ستونها
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13  | 
						# ایجاد دیتا فریم emp.data <- data.frame(    emp_id = c (1:5),    emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),    start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # استخراج دو سطر اول result <- emp.data[1:2,] print(result)  | 
					
| 
					 1 2 3  | 
						  emp_id    emp_name   salary    start_date 1      1     Rick      623.3     2012-01-01 2      2     Dan       515.2     2013-09-23  | 
					
استخراج سطرهای 3 و 5 همراه با ستونهای 2 و 4
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14  | 
						# ایجاد دیتا فریم emp.data <- data.frame(    emp_id = c (1:5),     emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),  	start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # استخراج سطرهای 3 و 5 با ستونهای 2 و 4 result <- emp.data[c(3,5),c(2,4)] print(result)  | 
					
| 
					 1 2 3  | 
						  emp_name start_date 3 Michelle 2014-11-15 5     Gary 2015-03-27  | 
					
گسترش دیتا فریم در زبان R
فریم داده را میتوان با افزودن ستونها یا اضافه کردن سطرها گسترش داد.
افزودن ستون (Add Column)
برای اضافه کردن یک ستون جدید کافی است یک بردار (vector) را با نام ستون تازه به دیتا فریم تخصیص دهیم.
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15  | 
						# ایجاد فریم داده emp.data <- data.frame(    emp_id = c (1:5),     emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),     start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    stringsAsFactors = FALSE ) # افزودن ستون "dept" emp.data$dept <- c("IT","Operations","IT","HR","Finance") v <- emp.data print(v)  | 
					
| 
					 1 2 3 4 5 6  | 
						  emp_id   emp_name    salary    start_date       dept 1     1    Rick        623.30    2012-01-01       IT 2     2    Dan         515.20    2013-09-23       Operations 3     3    Michelle    611.00    2014-11-15       IT 4     4    Ryan        729.00    2014-05-11       HR 5     5    Gary        843.25    2015-03-27       Finance  | 
					
افزودن سطر (Add Row)
برای افزودن سطرهای جدید بهصورت دائمی، باید دادههای تازه را با همان ساختار دیتا فریم موجود ایجاد کرده و سپس با استفاده از تابع rbind() آنها را به هم متصل کنیم.
در مثال زیر، یک دیتا فریم با ردیفهای جدید ایجاد میکنیم و آن را با دیتا فریم موجود ادغام میکنیم تا دیتا فریم نهایی ایجاد شود.
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24  | 
						# ایجاد فریم داده اول emp.data <- data.frame(    emp_id = c (1:5),     emp_name = c("Rick","Dan","Michelle","Ryan","Gary"),    salary = c(623.3,515.2,611.0,729.0,843.25),     start_date = as.Date(c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",       "2015-03-27")),    dept = c("IT","Operations","IT","HR","Finance"),    stringsAsFactors = FALSE ) # ایجاد فریم داده دوم emp.newdata <- data.frame(    emp_id = c (6:8),     emp_name = c("Rasmi","Pranab","Tusar"),    salary = c(578.0,722.5,632.8),     start_date = as.Date(c("2013-05-21","2013-07-30","2014-06-17")),    dept = c("IT","Operations","Fianance"),    stringsAsFactors = FALSE ) # ترکیب دو فریم داده emp.finaldata <- rbind(emp.data, emp.newdata) print(emp.finaldata)  | 
					
| 
					 1 2 3 4 5 6 7 8 9  | 
						  emp_id     emp_name    salary     start_date       dept 1      1     Rick        623.30     2012-01-01       IT 2      2     Dan         515.20     2013-09-23       Operations 3      3     Michelle    611.00     2014-11-15       IT 4      4     Ryan        729.00     2014-05-11       HR 5      5     Gary        843.25     2015-03-27       Finance 6      6     Rasmi       578.00     2013-05-21       IT 7      7     Pranab      722.50     2013-07-30       Operations 8      8     Tusar       632.80     2014-06-17       Fianance  | 
					
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.
- انتشار: ۲۱ شهریور ۱۴۰۴
 
دسته بندی موضوعات
- آموزش ارز دیجیتال
 - آموزش برنامه نویسی
 - آموزش متنی برنامه نویسی
 - اطلاعیه و سایر مطالب
 - پروژه برنامه نویسی
 - دوره های تخصصی برنامه نویسی
 - رپورتاژ
 - فیلم های آموزشی
- ++C
 - ADO.NET
 - Adobe Flash
 - Ajax
 - AngularJS
 - apache
 - ARM
 - Asp.Net
 - ASP.NET MVC
 - AVR
 - Bootstrap
 - CCNA
 - CCNP
 - CMD
 - CSS
 - Dreameaver
 - EntityFramework
 - HTML
 - IOS
 - jquery
 - Linq
 - Mysql
 - Oracle
 - PHP
 - PHPMyAdmin
 - Rational Rose
 - silver light
 - SQL Server
 - Stimulsoft Reports
 - Telerik
 - UML
 - VB.NET&VB6
 - WPF
 - Xml
 - آموزش های پروژه محور
 - اتوکد
 - الگوریتم تقریبی
 - امنیت
 - اندروید
 - اندروید استودیو
 - بک ترک
 - بیسیک فور اندروید
 - پایتون
 - جاوا
 - جاوا اسکریپت
 - جوملا
 - دلفی
 - دوره آموزش Go
 - دوره های رایگان پیشنهادی
 - زامارین
 - سئو
 - ساخت CMS
 - سی شارپ
 - شبکه و مجازی سازی
 - طراحی الگوریتم
 - طراحی بازی
 - طراحی وب
 - فتوشاپ
 - فریم ورک codeigniter
 - فلاتر
 - کانستراکت
 - کریستال ریپورت
 - لاراول
 - معماری کامپیوتر
 - مهندسی اینترنت
 - هوش مصنوعی
 - یونیتی
 
 - کتاب های آموزشی
- Android
 - ASP.NET
 - AVR
 - LINQ
 - php
 - Workflow
 - اچ تی ام ال
 - بانک اطلاعاتی
 - برنامه نویسی سوکت
 - برنامه نویسی موبایل
 - پاسکال
 - پایان نامه
 - پایتون
 - جاوا
 - جاوا اسکریپت
 - جی کوئری
 - داده کاوی
 - دلفی
 - رباتیک
 - سئو
 - سایر کتاب ها
 - سخت افزار
 - سی اس اس
 - سی پلاس پلاس
 - سی شارپ
 - طراحی الگوریتم
 - فتوشاپ
 - مقاله
 - مهندسی نرم افزار
 - هک و امنیت
 - هوش مصنوعی
 - ویژوال بیسیک
 
 - نرم افزار و ابزار برنامه نویسی
 - وردپرس
 











