🧄R数据图形分析及精神健康数据和健身数据可视化项目
R | 数据可视化 | 统计 | 更快的组操作dplyr | 迭代purrr | 数据重塑 | Tidyverse | 概率分布 | 线性模型 | 正则化和收缩 | 非线性模型 | 时间序列 | 聚类 | 模型拟合 | 仪表板
R 基础知识 | 高级数据结构 | 读取数据到 R 中 | 统计图形 | 编写 R 函数 | 控制语句 | 循环到迭代 | 组处理 | 使用 dplyr 更快地进行组处理 | purrr 迭代 | 数据重塑 | Tidyverse 中重塑数据 | 处理字符串 | 概率分布 | 基础统计学 | 线性模型 | 广义线性模型 | 模型诊断 | 正则化和收缩 | 非线性模型
时间序列和自相关
自回归移动平均线
拟合时间序列模型的最常见方法之一是使用自回归 (AR)、移动平均 (MA) 或两者 (ARMA)。 这些模型在 R 中得到了很好的表示,并且相当容易使用。 ARMA(p, q) 的公式是:
Xt−Φ1Xt−1−⋯−ΦpXt−p=Zt+θ1Zt−1+⋯+θqZt−q
其中,
Zt∼WN(0,σ2)
是白噪声,本质上是随机数据。
AR 模型可以被认为是时间序列当前值与先前值的线性回归。 类似地,MA 模型是时间序列当前值与当前和先前残差的线性回归。
为了举例说明,我们将使用API 下载一些国家从 1960 年到 2011 年的国内生产总值 (GDP)。
> library(WDI)
> gdp <- WDI(country=c("US", "CA", "GB", "DE", "CN", "JP", "SG", "IL"),
+ indicator=c("NY.GDP.PCAP.CD", "NY.GDP.MKTP.CD"),
+ start=1960, end=2011)
> names(gdp) <- c("iso2c", "Country", "Year", "PerCapGDP", "GDP")
下载后,我们可以查看数据,这些数据以长国年格式存储,人均 GDP 图如图所示。 图显示了绝对 GDP,说明尽管 GDP 在过去十年中大幅增长,但其人均国内生产总值仅略有增加。
> head(gdp)
iso2c Country Year PerCapGDP GDP
1 CA Canada 1960 2294.569 41093453545
2 CA Canada 1961 2231.294 40767969454
3 CA Canada 1962 2255.230 41978852041
4 CA Canada 1963 2354.839 44657169109
5 CA Canada 1964 2529.518 48882938810
6 CA Canada 1965 2739.586 53909570342
> library(ggplot2)
> library(scales)
> # per capita GDP
> ggplot(gdp, aes(Year, PerCapGDP, color=Country, linetype=Country)) +
+ geom_line() + scale_y_continuous(label=dollar)
>
> library(useful)
> # absolute GDP
> ggplot(gdp, aes(Year, GDP, color=Country, linetype=Country)) +
+ geom_line() +
+ scale_y_continuous(label=multiple_format(extra=dollar,
+ multiple="M"))
首先我们只看一个时间序列,所以我们提取的数据.
> us <- gdp$PerCapGDP[gdp$Country == "United States"]
> # convert it to a time series
> us <- ts(us, start=min(gdp$Year), end=max(gdp$Year))
> us
Time Series:
Start = 1960
End = 2011
Frequency = 1
[1] 2881.100 2934.553 3107.937 3232.208 3423.396 3664.802
[7] 3972.123 4152.020 4491.424 4802.642 4997.757 5360.178
[13] 5836.224 6461.736 6948.198 7516.680 8297.292 9142.795
[19] 10225.307 11301.682 12179.558 13526.187 13932.678 15000.086
[25] 16539.383 17588.810 18427.288 19393.782 20703.152 22039.227
[31] 23037.941 23443.263 24411.143 25326.736 26577.761 27559.167
[37] 28772.356 30281.636 31687.052 33332.139 35081.923 35912.333
[43] 36819.445 38224.739 40292.304 42516.393 44622.642 46349.115
[49] 46759.560 45305.052 46611.975 48111.967
> plot(us, ylab="Per Capita GDP", xlab="Year")
评估时间序列的另一种方法是查看其自协方差函数 (ACF) 和部分自协方差函数 (PACF)。 在 R 中,这是通过适当命名的 acf 和 pacf 函数完成的。
聚类 | 使用 Caret 的模型拟合 | knitr 的再现性和报告 | 使用 RMarkdown 富文档 | Shiny 的交互式仪表板 | 构建 R 包
项目
精神健康数据可视化
源代码
健身数据可视化
源代码
Last updated