![Trending Articles on Technical and Non Technical topics](/images/trending_categories.jpeg)
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
Advertisements