Matrix vs Dataframe in R

A data structure is a particular way of organizing data in a computer so that it can be used effectively. The idea is to reduce the space and time complexities of different tasks.

The two most important data structures in R are Matrix and Dataframe, they look the same but different in nature.

Matrix in R –

It’s a homogeneous collection of data sets which is arranged in a two dimensional rectangular organisation. It’s a m*n array with similar data type. It is created using a vector input. It has a fixed number of rows and columns. You can perform many arithmetic operations on R matrix like – addition, subtraction, multiplication, and divisions.

Example:

filter_none

edit
close

play_arrow

link
brightness_4
code

# Matrix of two rows
# and three columns 
# boolean value by row is true.
# passed as 4th parameter
A = matrix (c(11, 22, 33, 44, 55, 66), 
            nrow = 2, ncol = 3, byrow = 1)
  
# Printing Matrix
print(A)

chevron_right


Output:



     [, 1] [, 2] [, 3]
[1, ]   11   22   33
[2, ]   44   55   66

Application & Usage

  • It has great use in Economics for calculating some data like GDP(Gross Domestic Production) or PI(Price per capita income).
  • It is also helpful in the study of electrical and electronics circuits.
  • Matrix are used in the study of surveys, i.e. Plotting graphs etc.
  • Helpful in probablity and statistics.

DataFrames in R –

It is used for storing data tables. It can contain multiple data types in multiple columns called fields. It is a list of vector of equal length. It is a generalized form of a matrix. It is like a table in excel sheets. It has column and row names. The name of rows are unique with no empty columns. The data stored must be numeric, character or factor type. DataFrames are heterogeneous.

Example:

filter_none

edit
close

play_arrow

link
brightness_4
code

# creating company data frame
comp.data <- data.frame(
  
# company ids
# data members
comp_id = c (1:3),
  
# company names
comp_name = c("Geeks", "For", "Geeks"),
growth = c(16000, 14000, 12000),
  
# company start dates
# data members
comp_start_date = as.Date(c("02/05/10", "04/04/10", "05/03/10"))
)
print(comp.data)

chevron_right


Output :
R-Dataframe-01

Application & Usage

  • Data frames can do lot of works like fit statistics formulas.
  • Processing data(Not possible with Matrix, First converting to Data Frame is mandatory).
  • Transpose is possible, i.e. changing rows to columns and vice versa which is useful in Data Science.

Matrix v/s Data Frames in R

Matrix Dataframe
Collection of data sets arranged in a two dimensional rectangular organisation. Stores data tables that contains multiple data types in multiple column called fields.
It’s m*n array with similar data type. It is a list of vector of equal length. It is a generalized form of matrix.
It has fixed number of rows and columns. It has variable number of rows and columns.
The data stored in columns can be only of same data type. The data stored must be numeric, character or factor type.
Matrix is homogeneous. DataFrames is heterogeneous.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :

3


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.