0% found this document useful (0 votes)
8 views4 pages

Module 3 Creating Data Frames

The document explains the concept of data frames in R, detailing their structure, characteristics, and how to create, manipulate, and expand them. It includes examples of creating a data frame, extracting specific data, and adding new columns and rows. The document also demonstrates how to obtain the structure and summary of the data frame using R functions.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views4 pages

Module 3 Creating Data Frames

The document explains the concept of data frames in R, detailing their structure, characteristics, and how to create, manipulate, and expand them. It includes examples of creating a data frame, extracting specific data, and adding new columns and rows. The document also demonstrates how to obtain the structure and summary of the data frame using R functions.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Creating data frames:

A data frame is a table or a two-dimensional array-like structure in which each column


contains values of one variable and each row contains one set of values from each column.
• Data frames are tabular data objects.
• A Data frame is a list of vector of equal length.
• Data frame in R is used for storing data tables.
Characteristics of a data frame:
1. The column names should be non-empty.
2. The row names should be unique.
3. The data stored in a data frame can be of numeric, factor or character type
Create Data Frame
# Create the data frame.
[Link] <- [Link](
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 = [Link](c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-
11",
"2015-03-27")),
stringsAsFactors = FALSE
)# Print the data frame.
print([Link])

When we execute the above code, it produces the following result –


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

Get the Structure of the Data Frame


The structure of the data frame can be seen by using str() function
# Create the data frame.
[Link] <- [Link](
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 = [Link](c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",
"2015-03-27")),
stringsAsFactors = FALSE
)
# Get the structure of the data frame.
str([Link])
When we execute the above code, it produces the following result –
'[Link]': 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 of Data in Data Frame


The statistical summary and nature of the data can be obtained by applying summary()
function.
# Create the data frame.
[Link] <- [Link](
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 = [Link](c("2012-01-01", "2013-09-23", "2014-11-15", "2014-05-11",
"2015-03-27")),
stringsAsFactors = FALSE
)
# Print the summary.
print(summary([Link]))
When we execute the above code, it produces the following result −
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

Extract Data from Data Frame:


# Extract Specific columns.
result <- [Link]([Link]$emp_name,[Link]$salary)
print(result)
When we execute the above code, it produces the following result −
[Link].emp_name [Link]
1 Rick 623.30
2 Dan 515.20
3 Michelle 611.00
4 Ryan 729.00
5 Gary 843.25
# Extract first two rows.
result <- [Link][1:2,]
print(result)

When we execute the above code, it produces the following result –


emp_id emp_name salary start_date
1 1 Rick 623.3 2012-01-01
2 2 Dan 515.2 2013-09-23
# Extract 3rd and 5th row with 2nd and 4th column.
result <- [Link][c(3,5),c(2,4)]
print(result)
When we execute the above code, it produces the following result −
emp_name start_date
3 Michelle 2014-11-15
5 Gary 2015-03-27
Expand Data Frame
A data frame can be expanded by adding columns and rows.0
1. Add Column
Just add the column vector using a new column name.
# Add the "dept" coulmn.
[Link]$dept <- c("IT","Operations","IT","HR","Finance")
v <- [Link]
print(v) emp_id emp_name salary start_date
1 1 Rick 623.3 2012-01-01
2 2 Dan 515.2 2013-09-23
# Extract 3rd and 5th row with 2nd and 4th column.
result <- [Link][c(3,5),c(2,4)]
print(result)
When we execute the above code, it produces the following result −
emp_name start_date
3 Michelle 2014-11-15
5 Gary 2015-03-27
Expand Data Frame
A data frame can be expanded by adding columns and rows.0
1. Add Column
Just add the column vector using a new column name.
# Add the "dept" coulmn.
[Link]$dept <- c("IT","Operations","IT","HR","Finance")
v <- [Link]
print(v)

When we execute the above code, it produces the following result


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

2. Add Row
To add more rows permanently to an existing data frame, we need to bring in the new rows
in the same structure as the existing data frame and use the rbind() function.
In the example below we create a data frame with new rows and merge it with the existing
data frame to create the final data frame.
# Create the second data frame
[Link] <- [Link](
emp_id = c (6:8),
emp_name = c("Rasmi","Pranab","Tusar"),
salary = c(578.0,722.5,632.8),
start_date = [Link](c("2013-05-21","2013-07-30","2014-06-17")),
dept = c("IT","Operations","Fianance"),
stringsAsFactors = FALSE
)
# Bind the two data frames.
[Link] <- rbind([Link],[Link])
print([Link])

You might also like