如何从Qualterly时间列 - R创建数值变量

问题描述 投票:0回答:2

我有一个数据集,目前看起来像这样:

Time    Var1 Var2 
2013 Q4 123  756
2013 Q4 657  987
2014 Q1 746  756
2014 Q1 66   999
2014 Q2 774  542

我需要将这个分类的'Time'变量转换为数值变量,这可能看起来像这样:

Time    Var1 Var2 n.Time
2013 Q4 123  756  1
2013 Q4 657  987  1
2014 Q1 746  756  2
2014 Q1 66   999  2
2014 Q2 774  542  3

或者类似的东西,它给“时间”列一个与之成比例的数值。

我试过了

df$n.Time <- as.yearqtr(df$Time)

但这只是提供与“时间”列相同的输出,而不是使其成为数字。

任何帮助将不胜感激

r date time data-manipulation numerical
2个回答
1
投票

会这样的吗?

df$n.Time <- as.numeric(as.factor(df$Time))

1
投票

我认为你正在寻找拆分Q部分,从Time列,然后将其更改为数值。

df$n.Time <- as.factor(substr(as.character(df$Time),
             gregexpr("Q",df$Time),nchar(as.character(df$Time))))
© www.soinside.com 2019 - 2024. All rights reserved.