分组数据,按组查找结果,使用R绘图

AME*_*AME 4 r

预安装的地震数据集有5个变量和1000个观测值.

我想要创建的简单图表应该按地震深度类别显示平均地震震级(即Y轴=幅度,X轴=深度类别).

在这个数据集中,地震深度变量范围从40到680.我想将1000次地震深度观测分为8类,例如40 - 120,121 - 200,...... 600 - 680.然后,我会喜欢按深度类别取平均地震震级并将其绘制在折线图上.

我很感激任何帮助.谢谢!

mds*_*ner 9

首先使用cut进行深度分类:

depth.class <- cut(quakes$depth, c(40, 120, 200, 300, 400, 500, 600, 680), include.lowest = TRUE)
Run Code Online (Sandbox Code Playgroud)

(请注意,您的类定义可能需要根据您的具体情况而变化,并给出cut()行为的详细信息).

找出每个depth.class中的平均幅度(假设没有NAs):

mean.mag <- tapply(quake$mag, depth.class, mean)
Run Code Online (Sandbox Code Playgroud)

(例如mean.mag <- tapply(quake$mag, depth.class, mean, na.rm = TRUE),在适当的情况下为缺少值的数据集添加na.rm ).

绘制成一条线:

plot(mean.mag, type = "l", xlab = "magnitude class")
Run Code Online (Sandbox Code Playgroud)

将类标签放在X轴上是一项额外的工作,但此时你可能会质疑线图是否真的适合这里.

快速刺伤,关闭轴,然后直接从切割因子中提出类:

plot(mean.mag, type = "l", xlab = "magnitude class", axes = FALSE)
axis(1, 1:nlevels(depth.class), levels(depth.class))
axis(2)
box()
Run Code Online (Sandbox Code Playgroud)