Skip to contents

Converts detected PPG pulses to pulse-to-pulse intervals and delegates time-, frequency-, and optional nonlinear-domain metrics to the existing HRV engine with ECG rhythm gating disabled.

Usage

pulseRateVariability(
  x,
  peaks = NULL,
  freq = TRUE,
  nonlinear = FALSE,
  assay_name = NULL,
  ...
)

Arguments

x

A PPG PhysioExperiment.

peaks

Optional peak table from ppgDetectPulses().

freq

Logical; calculate frequency-domain PRV.

nonlinear

Logical; calculate nonlinear PRV.

assay_name

Optional raw PPG assay name.

...

Detection arguments passed to ppgDetectPulses() when peaks is NULL.

Value

A named list containing ppi, time, freq, and nonlinear.

References

Schafer A, Vagedes J (2013). How accurate is pulse rate variability as an estimate of heart rate variability? International Journal of Cardiology, 166:15-29. doi:10.1016/j.ijcard.2012.03.119

Examples

simulation <- make_ppg(n_time = 15000)
pulseRateVariability(simulation$pe, freq = FALSE)
#> $ppi
#>     channel ppi_ms time_sec
#> 1         1    832    0.976
#> 2         1    832    1.808
#> 3         1    832    2.640
#> 4         1    832    3.472
#> 5         1    832    4.304
#> 6         1    832    5.136
#> 7         1    824    5.968
#> 8         1    840    6.792
#> 9         1    832    7.632
#> 10        1    832    8.464
#> 11        1    840    9.296
#> 12        1    824   10.136
#> 13        1    832   10.960
#> 14        1    832   11.792
#> 15        1    832   12.624
#> 16        1    832   13.456
#> 17        1    832   14.288
#> 18        1    832   15.120
#> 19        1    832   15.952
#> 20        1    832   16.784
#> 21        1    832   17.616
#> 22        1    832   18.448
#> 23        1    832   19.280
#> 24        1    832   20.112
#> 25        1    840   20.944
#> 26        1    824   21.784
#> 27        1    832   22.608
#> 28        1    840   23.440
#> 29        1    824   24.280
#> 30        1    832   25.104
#> 31        1    832   25.936
#> 32        1    840   26.768
#> 33        1    824   27.608
#> 34        1    840   28.432
#> 35        1    824   29.272
#> 36        1    832   30.096
#> 37        1    832   30.928
#> 38        1    832   31.760
#> 39        1    832   32.592
#> 40        1    832   33.424
#> 41        1    824   34.256
#> 42        1    840   35.080
#> 43        1    832   35.920
#> 44        1    832   36.752
#> 45        1    824   37.584
#> 46        1    840   38.408
#> 47        1    832   39.248
#> 48        1    840   40.080
#> 49        1    824   40.920
#> 50        1    824   41.744
#> 51        1    840   42.568
#> 52        1    832   43.408
#> 53        1    832   44.240
#> 54        1    840   45.072
#> 55        1    824   45.912
#> 56        1    824   46.736
#> 57        1    840   47.560
#> 58        1    832   48.400
#> 59        1    832   49.232
#> 60        1    832   50.064
#> 61        1    824   50.896
#> 62        1    840   51.720
#> 63        1    832   52.560
#> 64        1    832   53.392
#> 65        1    832   54.224
#> 66        1    832   55.056
#> 67        1    832   55.888
#> 68        1    832   56.720
#> 69        1    832   57.552
#> 70        1    832   58.384
#> 71        1    832   59.216
#> 72        1    832   60.048
#> 73        1    832   60.880
#> 74        1    832   61.712
#> 75        1    840   62.544
#> 76        1    816   63.384
#> 77        1    840   64.200
#> 78        1    832   65.040
#> 79        1    832   65.872
#> 80        1    824   66.704
#> 81        1    840   67.528
#> 82        1    832   68.368
#> 83        1    832   69.200
#> 84        1    840   70.032
#> 85        1    824   70.872
#> 86        1    840   71.696
#> 87        1    824   72.536
#> 88        1    832   73.360
#> 89        1    832   74.192
#> 90        1    832   75.024
#> 91        1    824   75.856
#> 92        1    840   76.680
#> 93        1    832   77.520
#> 94        1    832   78.352
#> 95        1    832   79.184
#> 96        1    832   80.016
#> 97        1    824   80.848
#> 98        1    840   81.672
#> 99        1    824   82.512
#> 100       1    848   83.336
#> 101       1    824   84.184
#> 102       1    832   85.008
#> 103       1    824   85.840
#> 104       1    832   86.664
#> 105       1    840   87.496
#> 106       1    832   88.336
#> 107       1    832   89.168
#> 108       1    832   90.000
#> 109       1    840   90.832
#> 110       1    824   91.672
#> 111       1    824   92.496
#> 112       1    840   93.320
#> 113       1    832   94.160
#> 114       1    832   94.992
#> 115       1    832   95.824
#> 116       1    832   96.656
#> 117       1    824   97.488
#> 118       1    840   98.312
#> 119       1    840   99.152
#> 120       1    824   99.992
#> 121       1    832  100.816
#> 122       1    840  101.648
#> 123       1    824  102.488
#> 124       1    824  103.312
#> 125       1    848  104.136
#> 126       1    824  104.984
#> 127       1    832  105.808
#> 128       1    832  106.640
#> 129       1    824  107.472
#> 130       1    840  108.296
#> 131       1    832  109.136
#> 132       1    832  109.968
#> 133       1    832  110.800
#> 134       1    832  111.632
#> 135       1    832  112.464
#> 136       1    832  113.296
#> 137       1    832  114.128
#> 138       1    824  114.960
#> 139       1    840  115.784
#> 140       1    832  116.624
#> 141       1    832  117.456
#> 142       1    824  118.288
#> 
#> $time
#>   channel  mean_pp     sdpp    rmssd pnn50  mean_pr
#> 1       1 831.9437 5.676597 9.786371     0 72.12027
#> 
#> $freq
#> NULL
#> 
#> $nonlinear
#> NULL
#>