我正在尝试为包含1900年至2010年之间的年份的数据绘制图表,并在R中绘制一年中每个月的数据。我需要选择1950年至2001年间与11月份相比的年份。如何选择部分数据绘制此图表? 由于我是R编程或任何编程的新手,一个易于理解的例子会有很大的帮助。
感谢 GRV
答案 0 :(得分:1)
我不确定你的意思
选择1950年至2001年与11月至2月之间的年份
但是下面的内容应该让你开始重复的例子......
#create a vector of months from 1900 through 2010
months <- seq(as.Date("1900/1/1"), as.Date("2010/12/31"), "months")
#assign a random vector of equal length
output <- rnorm(length(months))
#assign both values to a data_frame
data <- data.frame(months = months, output = output)
根据您的描述,您的数据应该类似于数据框,称为data
。
从这里开始,您可以使用subset
功能来帮助您。第一个示例是从1950年到2001年的数据子集。下一个示例将该子集限制为11月到2月。
#subset to just 1950 through 2001
data_sub <- subset(data, months >= as.Date("1950-01-01") & months <= as.Date("2001-12-31"))
#subset the 1950 to 2001 data to just Nov-feb months (i.e. c(11,12,1,2))
data_sub_nf <- subset(data_sub, as.numeric(format(data_sub$months, "%m")) %in% c(11,12,1,2))
您还应该阅读Why is `[` better than `subset`?以超越subset
。
如上所述,在数据成为子集后,您可以使用plot
或任何其他绘图功能来绘制数据图表。