【发布时间】:2015-10-16 18:36:45
【问题描述】:
我有一个包含三个变量的每周数据
W Var Units
1 A 10
2 A 3
2 B 19
3 C 8
3 A 54
3 A 6
4 C 2
4 B 13
6 C 22
6 A 31
7 C 17
7 A 43
7 D 4
`我想以这样的方式绘制它,即在 y 轴 Var(即具有不同颜色的 A、B、C)上应该用 x 轴上的周数 (W) 绘制。一周 (W) 可能包含两个或三个变量。例如,第三周有 A 和 C。所以周是多值函数,单位表示点的大小。到目前为止,我已经使用了
ndf <- data.frame(W= 1:max(as.numeric(as.character(df$W))))
merge_df <- merge(df, ndf, all=TRUE) # to note every week number so that zeors can also be plotted
merge_df[is.na(merge_df)] <- 0 # setting Na's to zero
问题是在这些步骤之后,在 Var 列中产生了一些 NA。如何处理和绘制?
接下来这是一个示例数据,如果我有 10 年的周数,并且我想将 Var 绘制为 10 年的每周时间序列,如何做到这一点。
【问题讨论】:
-
NA 出现在 Var 列中,因为它属于
factor类。零不是因素之一,所以它没有被改变。您确定要在该槽中输入零而不是字母吗? -
亲爱的 Pierre,在 Steven 提供的解决方案中可以轻松处理。 NA 因子现在不再是一个令人不安的部分。
标签: r plot dataframe time-series