簡體   English   中英

計算二次曲線的平均值

[英]Calculate mean values in a quadratic curve

這是一個示例數據

 sales <- function(price) { 100 - 0.5 * price }
 x <- 50:150
 x1 <- sales(x)
 revenue <- function(price) { price * sales(price) }
 y<- revenue(x)

 dat <- as.data.frame(cbind(y,x))
 plot(dat$y ~ dat$x)

在此處輸入圖片說明

我想計算y 2個均值:

(1)平均值1: y平均值,從x的第一個值開始直到y達到最大值(在中間)。

(2)均值2: y平均值,從最大值到在x的最后一個值處達到最小值。

我以為我會先根據增加的x值來整理數據

dat1 <- dat[order(dat$x),]

但是我被困在這里。 我不確定如何從此處計算這兩個均值?

您可以使用split功能:

n <- 2
dfchunk <- split(dat1, factor(sort(rank(row.names(dat1))%%n)))

這將給您清單2。

然后,您可以得到它們的平均值:

avgYFirstHalf  <- mean(dfchunk$`0`$y)
avgYSecondHalf <- mean(dfchunk$`1`$y)

> avgYFirstHalf
# 4570.75
> avgYSecondHalf 
# 4579.167

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM