[137] | 1 | %ARRHYTHMIA 452 objects with 279 features in 13 classes |
---|
[80] | 2 | % |
---|
[137] | 3 | % X = ARRHYTHMIA(VAL) |
---|
[80] | 4 | % |
---|
| 5 | % The aim is to distinguish between the presence and absence of cardiac |
---|
[137] | 6 | % arrhythmia and to classify it in one of the 13 groups. Class 1 refers |
---|
| 7 | % to 'normal' ECG classes 2 to 13 refer to different classes of |
---|
| 8 | % arrhythmia. |
---|
[80] | 9 | % |
---|
[96] | 10 | % By default features with missing values are removed. When something else |
---|
[123] | 11 | % is desired, use one of the options in MISVAL for VAL. |
---|
[94] | 12 | % |
---|
[150] | 13 | % SEE ALSO <a href="http://prtools.tudelft.nl/prtools/">PRTools Guide</a>, <a href="http://archive.ics.uci.edu/ml/">UCI Website</a> |
---|
[94] | 14 | % PRTOOLS, DATASETS, MISVAL |
---|
| 15 | |
---|
[150] | 16 | % Copyright: R.P.W. Duin |
---|
[94] | 17 | |
---|
[137] | 18 | function a = arrhythmia(val) |
---|
[80] | 19 | |
---|
[137] | 20 | if nargin < 1, val = 'f-remove'; end |
---|
| 21 | a = pr_loadmatfile; |
---|
| 22 | if isempty(a) |
---|
[138] | 23 | opt.delimeter = ' '; |
---|
[137] | 24 | opt.labfeat = 280; |
---|
| 25 | fl = {'age' 'sex' 'height' 'weight' 'QRS duration' 'P-R interval' ... |
---|
| 26 | 'Q-T interval' 'T interval' 'P interval' 'QRS' 'T' 'P' 'QRST' ... |
---|
| 27 | 'J' 'heartrate'}; |
---|
| 28 | fl1 = {'Q wave width' 'R wave width' 'S wave width' 'R'' wave width' ... |
---|
| 29 | 'S'' wave width' 'number of intrinsic deflections' ... |
---|
| 30 | 'ragged R wave' 'diphasic derivation of R wave' ... |
---|
| 31 | 'ragged P wave' 'diphasic derivation of P wave' ... |
---|
| 32 | 'ragged T wave' 'diphasic derivation of T wave'}; |
---|
| 33 | fl = [fl strcat('DI-',fl1) strcat('DII-',fl1) strcat('DIII-',fl1) ... |
---|
| 34 | strcat('AVR-',fl1) strcat('AVL-',fl1) strcat('AVF-',fl1) ... |
---|
| 35 | strcat('V1-',fl1) strcat('V2-',fl1) strcat('V3-',fl1) ... |
---|
| 36 | strcat('V4-',fl1) strcat('V5-',fl1) strcat('V6-',fl1)]; |
---|
| 37 | fl2 = {'JJ wave ampl' 'Q wave ampl' 'R wave ampl' ... |
---|
| 38 | 'S wave ampl' 'R'' wave ampl' 'S'' wave ampl' 'P wave ampl' ... |
---|
| 39 | 'T wave ampl' 'QRSA sum' 'QRSTA'}; |
---|
| 40 | fl = [fl strcat('DI-',fl2) strcat('DII-',fl2) strcat('DIII-',fl2) ... |
---|
| 41 | strcat('AVR-',fl2) strcat('AVL-',fl2) strcat('AVF-',fl2) ... |
---|
| 42 | strcat('V1-',fl2) strcat('V2-',fl2) strcat('V3-',fl2) ... |
---|
| 43 | strcat('V4-',fl2) strcat('V5-',fl2) strcat('V6-',fl2)]; |
---|
| 44 | opt.featnames = fl; |
---|
| 45 | opt.dsetname = 'Arrhythmia normal'; |
---|
| 46 | % opt.classnames = {'benign' 'malignant'}; |
---|
| 47 | opt.desc=['The Arrhymthmia database from UCI. The aim is to ' ... |
---|
[123] | 48 | 'distinguish between the presence and absence of cardiac ' ... |
---|
| 49 | 'arrhythmia and to classify it in one of the 16 groups.']; |
---|
[137] | 50 | opt.link = 'ftp://ftp.ics.uci.edu/pub/machine-learning-databases/arrhythmia'; |
---|
| 51 | a = pr_download('http://prtools.tudelft.nl/prdatasets/arrhythmia.dat',[],opt); |
---|
| 52 | end |
---|
| 53 | a = misval(a,val); |
---|
[80] | 54 | |
---|
| 55 | return |
---|