ann2rr filters intervals by length instead of by time in the record
Maintainer antworten meist innerhalb von 1 Tag
Ein zugehöriger Pull Request wurde bereits gemerged.
- #622 von @TheNetherWatcher — gemerged
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 72/100
Rechercherichtung
The ann2rr function lives in wfdb/processing.py; start by reading its docstring and the filtering lines shown. Compute each interval's end time as cumulative sum of RR intervals from start_time, then keep those between bounds. Done means ann2rr('sample-data/100','atr', start_time=0.9) returns intervals after 0.9s, and tests pass.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
The ann2rr docstring describes start_time and stop_time as "the time to start the intervals" and "the time to stop the intervals", in seconds. But they're compared with the length of each interval, not with its position in the record:
time_interval = rr_interval / ann.fs
if start_time is not None:
time_interval = time_interval[(time_interval > start_time).astype(bool)]
if stop_time is not None:
time_interval = time_interval[(time_interval < stop_time).astype(bool)]
For example, with record 100 (360 Hz):
from wfdb import processing
len(processing.ann2rr("sample-data/100", "atr")) # 2274
processing.ann2rr("sample-data/100", "atr", start_time=0.9) # 30 intervals, all longer than 0.9 s
processing.ann2rr("sample-data/100", "atr", stop_time=0.5) # 2 intervals, both shorter than 0.5 s
So start_time=0.9 drops every interval shorter than 0.9 s, rather than the intervals before 0.9 s into the record.
The WFDB ann2rr program's -f and -t options select annotations by time in the record. ann2rr should probably do the same: keep the intervals that end between start_time and stop_time, measuring the first interval from start_time, as ann2rr -f does.
This is separate from #584, which changes which annotations are used but leaves this filtering unchanged.
- Vorherrschende Sprache
- Jupyter Notebook
- Sterne
- 856
- Forks
- 326
- Ø Merge
- 22 Std. 46 Min.
- Gemergte PRs (30 T.)
- 40
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus MIT-LCP/wfdb-python
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
MIT-LCP/wfdb-python#590 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
MIT-LCP/wfdb-python#568 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Add validation of segments when writing a `MultiRecord`Evtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
MIT-LCP/wfdb-python#557 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 58/100
MIT-LCP/wfdb-python#554 ·
Maintainer antworten meist innerhalb von 1 Tag
-
WFDB path ignoredOffen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
MIT-LCP/wfdb-python#545 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in MIT-LCP/wfdb-python
Ähnliche Issues
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
xarray-contrib/flox#522 · 1 Kommentar ·
-
maintenance
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
OpenFUSIONToolkit/GPEC#644 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Deserializing a sequence longer than N panics in src/serialization.rs instead of returning an errorOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
yegor256/microstack#86 ·
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 82/100
PecanProject/pecan#4218 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 3 Tagen