【问题标题】:Get the standar deviation each n rows with dplyr使用 dplyr 获取每 n 行的标准差
【发布时间】:2020-05-14 19:44:48
【问题描述】:

我正在尝试获取 data.frame 中每一行的最后 20 个值的 ST。该过程在 excel 中是这样的,但我试图在 r 和 dplyr 中进行。 enter image description here

【问题讨论】:

  • 欢迎来到 SO。如果您使您的问题具有可重复性,包括可用于测试和验证可能解决方案的样本输入和预期输出,那么为您提供帮助会更容易查看minimal reproducible exampleHow to Ask。数据图像不合适。
  • 你好丹尼尔。你的意思是每一行,还是每一列?该图显示了跨多行而非多列的计算。
  • 您好!我发了另一个帖子,提供更多信息!对不起!这是我的第一篇文章。这是链接stackoverflow.com/questions/61808947/…

标签: r dplyr standards standard-deviation st


【解决方案1】:

您的问题很细,没有提供数据源。但这里有一个你想要的例子。这是一个包含 50 行随机数的数据框。有两列数字。

选择该数据帧的最后二十行(这是您想要的),然后在循环中使用这二十行。数学函数应用于这 20 行中的每一行。

set.seed(14)
n <- sample(100, 50)
b <- sample(200, 50)
cdf <- data.frame(n, b)     # new data frame with random two columns of random numbers.

nrow(cdf)

last <- nrow(cdf) - 20             # Selecting the last 20 rows of data from the data frame

for (i in (last:nrow(cdf)))  {        # loop to apply math to last 20 rows of data.
    print(mean(cdf$b[i]))
    print(i)
    }

【讨论】:

  • 您好!感谢您的回答,抱歉信息不足,这是我在这里的第一个问题。问题是我需要数据中每个值的最后 20 个值中的 st。我会尝试再发一篇更具体的帖子。
  • 嗨。我很感激点击我提供的这个答案。如果我当时在,我会检查你的下一个问题。
猜你喜欢
  • 2015-06-17
  • 2020-08-31
  • 2019-09-17
  • 1970-01-01
  • 2018-08-12
  • 2019-01-03
  • 2021-12-05
  • 2021-10-30
相关资源
最近更新 更多