gpt4 book ai didi

r - 如何计算波形中脉冲的宽度?

转载 作者:行者123 更新时间:2023-12-01 12:08:26 26 4
gpt4 key购买 nike

我需要计算波形中脉冲的宽度。这些脉冲出现在整个波形中。

我正在尝试计算两个连续值之间的差异,如果它超过一个值(比如一个数字),那么我会将该点识别为脉冲的起点并找到一个点,它达到与之前相同的水平 &我会认为这是脉冲的终点。一旦我有了起点和终点,我就会计算宽度(这里是这两点之间的点数)

最佳答案

ggpmisc() 可以提供一些解决方案。需要对 span 值进行一点优化

wave <- c(1, 2, 1, 1.3, 1.2, 1, 2, 1, -25, -23, -24, -25, -24, -23, -26, -23, -17, -11, 2, 1, 1, 2)
wave = data.frame(wave = wave)

library(tidyverse)
#> Warning: package 'tibble' was built under R version 3.5.2
library(ggpmisc)
#> For news about 'ggpmisc', please, see https://www.r4photobiology.info/
#> For on-line documentation see https://docs.r4photobiology.info/ggpmisc/

with_valley <-
ggplot_build(
ggplot(wave, aes(seq_along(wave), wave)) + geom_line() +
stat_valleys(aes(seq_along(wave), wave), span = 10)
)
#> span increased to next odd value: 11


values <- with_valley$data[[2]]

values[2,"xintercept"]-values[1,"xintercept"]
#> [1] 6

reprex package 创建于 2019-01-24 (v0.2.1)

关于r - 如何计算波形中脉冲的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54341529/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com