Hyd*_*dro 1 statistics r probability ggplot2
probability of exceedance我正在尝试在 R 中进行计算。这是包含计算超出概率的详细信息和公式的链接。我尝试使用以下示例代码复制该过程,但是,我距离所附的示例绘图还很遥远。有一次,我想出了如何做到这一点 - 然后我想在具有data.frame多个variables.
library(tidyverse)
A = sample(0:5000, 2500)
A = A[order(A, decreasing = TRUE)]
Rank = 1:2500
DF = data.frame(cbind(A,Rank))
DF$Prob = 100*(DF$Rank/(length(DF$Prob+1)))
ggplot(data = DF, aes(x=Prob, y=A))+
geom_line() + scale_y_continuous(trans = "log10")
Run Code Online (Sandbox Code Playgroud)
问题中的计算公式Prob没有得到很好的实现。它先加 1 DF$Prob,然后在length应该加 1的时候取它length。
DF <- data.frame(A, Rank)
DF$Prob <- DF$Rank/(length(DF$Rank) + 1)
ggplot(data = DF, aes(x = Prob, y = A)) +
geom_line() +
scale_x_continuous(breaks = seq(0, 1, by = 0.20),
labels = percent) +
scale_y_continuous(trans = "log10")
Run Code Online (Sandbox Code Playgroud)
数据创建代码。
我已经更改了数据集示例。
下面的代码是可重现的,因为set.seed使用了并且 的sample概率递减。
set.seed(1234)
A <- sample(0:5000, 2500, prob = exp(seq(10, 0, length.out = 5001)))
A <- A[order(A, decreasing = TRUE)]
Rank <- 1:2500
Run Code Online (Sandbox Code Playgroud)