从长到宽的时间序列重塑data.frame

时间:2016-11-04 09:00:56

标签: r dataframe

我有一个包含13个站的数据集,每天(大约50年)观察到超过20万个。每个工作站都放在一个列中,左侧有年,月和日期,如下所示! 列为(年,月,数据,站名称(a,b,c,d ...... m)。



export class DataItem {
    constructor(public description?: string, public title?: string,  public image?: string) {
    }
}




我必须在这个维度重新排序,保持连续一个月和几年,因为列和列显示为年,月,日(1,2,3,4,5,..... ......每个月30或31)。它应该明确地为每个站执行。



Year	Month	Date	a	b	c	d	e	f	g	h	i	j	k	l	m
1961	1	1	0.2	0	0			0.01	0	0	0	0		0		0.04
1961	1	2	0.05	0	0			0	0	0	9.398	1.27		5.842		0.01
1961	1	3	0	0	0			0	0	0	1.27	0		0.01		
1961	1	4	0	0	0			0	0	0	0	0		0		0
1961	1	5	0	0	0			0	0	0	0	0		0		0
1961	1	6	0	0	0			0	0	0	0	0		0		0
1961	1	7	0	0	0			0	0	0	0	0		0		0
1961	1	8	0	0	0			0	0	0	0	0		0		0




为此,我尝试了Year Month 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1960 1 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 1960 1 22 11 0 0 0.3 0 0 0 0 0 0 0 0 0 0 0 0 0,但无法理解。提前感谢您的任何帮助。

1 个答案:

答案 0 :(得分:0)

从长到宽重塑数据。 我用这种方式解决了它,用年,月和日期制作每列的子集然后为每个列执行此代码。

"Sat Aug 04 11:48:27 +0000 2012"
|> Timex.parse!("%a %b %d %T %z %Y", :strftime)
|> Ecto.DateTime.cast!

# => #Ecto.DateTime<2012-08-04 11:48:27>
相关问题