- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to extract columns of a data frame with their names after converting it to a time series object in R?
To access columns of data frame in R, we just need to use $ sign but if the data frame is converted to a time series object then all the columns will behave as a time series, hence, we cannot simply use $ sign. For this purpose, we would need to use single square brackets and pass the appropriate column inside it. Look at the below examples to understand how it works.
Example 1
Consider the below data frame:
> set.seed(147) > x1<-rpois(20,5) > x2<-rpois(20,8) > x3<-rpois(20,3) > df1<-data.frame(x1,x2,x3) > df1
Output
x1 x2 x3 1 5 11 4 2 5 5 3 3 4 6 2 4 10 8 1 5 4 6 3 6 4 9 3 7 9 7 4 8 4 4 1 9 3 8 6 10 5 9 2 11 4 13 2 12 4 6 3 13 6 5 2 14 8 10 3 15 1 10 3 16 5 9 3 17 7 8 6 18 7 5 0 19 4 8 2 20 5 5 7
Converting df1 to time series object:
Example
> df1_time_series<-ts(df1) > df1_time_series Time Series: Start = 1 End = 20 Frequency = 1
Output
x1 x2 x3 1 5 11 4 2 5 5 3 3 4 6 2 4 10 8 1 5 4 6 3 6 4 9 3 7 9 7 4 8 4 4 1 9 3 8 6 10 5 9 2 11 4 13 2 12 4 6 3 13 6 5 2 14 8 10 3 15 1 10 3 16 5 9 3 17 7 8 6 18 7 5 0 19 4 8 2 20 5 5 7
Extracting columns of the above time series:
Example
> df1_time_series[,"x1"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 5 5 4 10 4 4 9 4 3 5 4 4 6 8 1 5 7 7 4 5
Example
> df1_time_series[,"x2"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 11 5 6 8 6 9 7 4 8 9 13 6 5 10 10 9 8 5 8 5
Example
> df1_time_series[,"x3"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 4 3 2 1 3 3 4 1 6 2 2 3 2 3 3 3 6 0 2 7
Example2
> y1<-rnorm(20,1,0.25) > y2<-rnorm(20,1,0.078) > y3<-rnorm(20,1,0.045) > y4<-rnorm(20,1,0.65) > df2<-data.frame(y1,y2,y3,y4) > df2
Output
y1 y2 y3 y4 1 0.4610082 1.1123116 0.9937312 1.60152771 2 1.2245278 1.1441032 0.9955816 1.01301470 3 0.9281928 0.9471151 1.0130205 1.73380614 4 0.6132334 0.9914514 1.0478584 1.12878115 5 0.8047991 0.9364563 1.0559170 0.11453683 6 1.3873896 0.9890774 0.8793818 1.08303443 7 0.8734964 0.9923517 1.0456627 1.40754764 8 0.5829787 1.1520386 1.0679080 -0.06112731 9 0.7886331 1.2120417 1.0131238 1.12503045 10 1.4817215 1.1045179 0.9894544 1.00392323 11 1.1166086 0.9957914 0.9241877 0.37224585 12 1.0734553 1.0714675 1.0013594 0.46353553 13 1.0378841 0.9814108 1.0169206 1.57986107 14 0.5939274 0.9737219 1.0043724 0.17741973 15 1.1111737 0.9444893 1.0601156 0.96969383 16 1.2379935 0.9730605 1.0632339 0.39235006 17 1.2920541 0.8550713 0.9872660 0.42308594 18 0.7378359 1.0077608 1.0571702 1.34754960 19 0.7497949 0.9085073 1.0041391 1.04504683 20 1.0315004 1.1117264 0.9580732 1.13297488
Example
> df2_ts<-ts(df2) > df2_ts Time Series: Start = 1 End = 20 Frequency = 1
Output
y1 y2 y3 y4 1 0.4610082 1.1123116 0.9937312 1.60152771 2 1.2245278 1.1441032 0.9955816 1.01301470 3 0.9281928 0.9471151 1.0130205 1.73380614 4 0.6132334 0.9914514 1.0478584 1.12878115 5 0.8047991 0.9364563 1.0559170 0.11453683 6 1.3873896 0.9890774 0.8793818 1.08303443 7 0.8734964 0.9923517 1.0456627 1.40754764 8 0.5829787 1.1520386 1.0679080 -0.06112731 9 0.7886331 1.2120417 1.0131238 1.12503045 10 1.4817215 1.1045179 0.9894544 1.00392323 11 1.1166086 0.9957914 0.9241877 0.37224585 12 1.0734553 1.0714675 1.0013594 0.46353553 13 1.0378841 0.9814108 1.0169206 1.57986107 14 0.5939274 0.9737219 1.0043724 0.17741973 15 1.1111737 0.9444893 1.0601156 0.96969383 16 1.2379935 0.9730605 1.0632339 0.39235006 17 1.2920541 0.8550713 0.9872660 0.42308594 18 0.7378359 1.0077608 1.0571702 1.34754960 19 0.7497949 0.9085073 1.0041391 1.04504683 20 1.0315004 1.1117264 0.9580732 1.13297488
Example
> df2_ts[,"y1"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 0.4610082 1.2245278 0.9281928 0.6132334 0.8047991 1.3873896 0.8734964 [8] 0.5829787 0.7886331 1.4817215 1.1166086 1.0734553 1.0378841 0.5939274 [15] 1.1111737 1.2379935 1.2920541 0.7378359 0.7497949 1.0315004
Example
> df2_ts[,"y2"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 1.1123116 1.1441032 0.9471151 0.9914514 0.9364563 0.9890774 0.9923517 [8] 1.1520386 1.2120417 1.1045179 0.9957914 1.0714675 0.9814108 0.9737219 [15] 0.9444893 0.9730605 0.8550713 1.0077608 0.9085073 1.1117264
Example
> df2_ts[,"y3"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 0.9937312 0.9955816 1.0130205 1.0478584 1.0559170 0.8793818 1.0456627 [8] 1.0679080 1.0131238 0.9894544 0.9241877 1.0013594 1.0169206 1.0043724 [15] 1.0601156 1.0632339 0.9872660 1.0571702 1.0041391 0.9580732
Example
> df2_ts[,"y4"] Time Series: Start = 1 End = 20 Frequency = 1
Output
[1] 1.60152771 1.01301470 1.73380614 1.12878115 0.11453683 1.08303443 [7] 1.40754764 -0.06112731 1.12503045 1.00392323 0.37224585 0.46353553 [13] 1.57986107 0.17741973 0.96969383 0.39235006 0.42308594 1.34754960 [19] 1.04504683 1.13297488
- Related Articles
- How to deal with missing column for row names when converting data frame to data.table object in R?
- How to extract data frame columns stored in a list in R?
- How to extract columns of a data frame in R using dplyr package?
- How to convert a matrix to a data frame with column names and row names as new columns in R?
- Extract columns with a string in column name of an R data frame.
- How to initialize a data frame with variable names in R?
- How to extract a single column of an R data frame as a data frame?
- How to extract only factor columns name from an R data frame?
- How to convert a data frame with categorical columns to numeric in R?
- How to select data frame columns based on their class in R?
- How to change the column names and row names of a data frame in R?
- How to change a data frame with comma separated values in columns to multiple columns in R?
- How to multiply vector values in sequence with columns of a data frame in R?
- How to add a column between columns or after last column in an R data frame?
- How to extract unique values in multiple columns in an R data frame using a single line code?

Advertisements