.. _moduleFeatures.jSymbolic:

music21.features.jSymbolic
==========================

.. WARNING: DO NOT EDIT THIS FILE: AUTOMATICALLY GENERATED.  Edit the .py file directly

.. module:: music21.features.jSymbolic



.. function:: getExtractorByTypeAndNumber(type, number)

    Typical usage: 

    >>> from music21 import *
    >>> t5 = getExtractorByTypeAndNumber('T', 5)
    >>> t5.__name__
    'VoiceEqualityNoteDurationFeature' 
    >>> bachExample = corpus.parse('bach/bwv66.6')
    >>> fe = t5(bachExample)

    
    Features unimplemented in jSymbolic but documented in the dissertation return None 

    
    >>> getExtractorByTypeAndNumber('C', 20) is None
    True 

    
    Totally unknown features return an exception: 

    
    >>> getExtractorByTypeAndNumber('L', 900)
    Traceback (most recent call last): 
    ... 
    JSymbolicFeatureException: Could not find any jSymbolic features of type L 
    >>> getExtractorByTypeAndNumber('C', 200)
    Traceback (most recent call last): 
    ... 
    JSymbolicFeatureException: jSymbolic features of type C do not have number 200 

    
    You could also find all the feature extractors this way: 

    
    >>> fs = features.jSymbolic.extractorsById
    >>> for k in fs:
    ...     for i in range(len(fs[k])): 
    ...       if fs[k][i] is not None: 
    ...         n = fs[k][i].__name__ 
    ...         if fs[k][i] not in features.jSymbolic.featureExtractors: 
    ...            n += " (not implemented)" 
    ...         print k, i, n 
    D 1 OverallDynamicRangeFeature (not implemented) 
    D 2 VariationOfDynamicsFeature (not implemented) 
    D 3 VariationOfDynamicsInEachVoiceFeature (not implemented) 
    D 4 AverageNoteToNoteDynamicsChangeFeature (not implemented) 
    I 1 PitchedInstrumentsPresentFeature 
    I 2 UnpitchedInstrumentsPresentFeature (not implemented) 
    I 3 NotePrevalenceOfPitchedInstrumentsFeature 
    I 4 NotePrevalenceOfUnpitchedInstrumentsFeature (not implemented) 
    I 5 TimePrevalenceOfPitchedInstrumentsFeature (not implemented) 
    I 6 VariabilityOfNotePrevalenceOfPitchedInstrumentsFeature 
    I 7 VariabilityOfNotePrevalenceOfUnpitchedInstrumentsFeature (not implemented) 
    I 8 NumberOfPitchedInstrumentsFeature 
    I 9 NumberOfUnpitchedInstrumentsFeature (not implemented) 
    I 10 PercussionPrevalenceFeature (not implemented) 
    I 11 StringKeyboardFractionFeature 
    I 12 AcousticGuitarFractionFeature 
    I 13 ElectricGuitarFractionFeature 
    I 14 ViolinFractionFeature 
    I 15 SaxophoneFractionFeature 
    I 16 BrassFractionFeature 
    I 17 WoodwindsFractionFeature 
    I 18 OrchestralStringsFractionFeature 
    I 19 StringEnsembleFractionFeature 
    I 20 ElectricInstrumentFractionFeature 
    M 1 MelodicIntervalHistogramFeature 
    M 2 AverageMelodicIntervalFeature 
    M 3 MostCommonMelodicIntervalFeature 
    M 4 DistanceBetweenMostCommonMelodicIntervalsFeature 
    M 5 MostCommonMelodicIntervalPrevalenceFeature 
    M 6 RelativeStrengthOfMostCommonIntervalsFeature 
    M 7 NumberOfCommonMelodicIntervalsFeature 
    M 8 AmountOfArpeggiationFeature 
    M 9 RepeatedNotesFeature 
    M 10 ChromaticMotionFeature 
    M 11 StepwiseMotionFeature 
    M 12 MelodicThirdsFeature 
    M 13 MelodicFifthsFeature 
    M 14 MelodicTritonesFeature 
    M 15 MelodicOctavesFeature 
    M 17 DirectionOfMotionFeature 
    M 18 DurationOfMelodicArcsFeature 
    M 19 SizeOfMelodicArcsFeature 
    P 1 MostCommonPitchPrevalenceFeature 
    P 2 MostCommonPitchClassPrevalenceFeature 
    P 3 RelativeStrengthOfTopPitchesFeature 
    P 4 RelativeStrengthOfTopPitchClassesFeature 
    P 5 IntervalBetweenStrongestPitchesFeature 
    P 6 IntervalBetweenStrongestPitchClassesFeature 
    P 7 NumberOfCommonPitchesFeature 
    P 8 PitchVarietyFeature 
    P 9 PitchClassVarietyFeature 
    P 10 RangeFeature 
    P 11 MostCommonPitchFeature 
    P 12 PrimaryRegisterFeature 
    P 13 ImportanceOfBassRegisterFeature 
    P 14 ImportanceOfMiddleRegisterFeature 
    P 15 ImportanceOfHighRegisterFeature 
    P 16 MostCommonPitchClassFeature 
    P 17 DominantSpreadFeature (not implemented) 
    P 18 StrongTonalCentresFeature (not implemented) 
    P 19 BasicPitchHistogramFeature 
    P 20 PitchClassDistributionFeature 
    P 21 FifthsPitchHistogramFeature 
    P 22 QualityFeature 
    P 23 GlissandoPrevalenceFeature (not implemented) 
    P 24 AverageRangeOfGlissandosFeature (not implemented) 
    P 25 VibratoPrevalenceFeature (not implemented) 
    R 1 StrongestRhythmicPulseFeature (not implemented) 
    R 2 SecondStrongestRhythmicPulseFeature (not implemented) 
    R 3 HarmonicityOfTwoStrongestRhythmicPulsesFeature (not implemented) 
    R 4 StrengthOfStrongestRhythmicPulseFeature (not implemented) 
    R 5 StrengthOfSecondStrongestRhythmicPulseFeature (not implemented) 
    R 6 StrengthRatioOfTwoStrongestRhythmicPulsesFeature (not implemented) 
    R 7 CombinedStrengthOfTwoStrongestRhythmicPulsesFeature (not implemented) 
    R 8 NumberOfStrongPulsesFeature (not implemented) 
    R 9 NumberOfModeratePulsesFeature (not implemented) 
    R 10 NumberOfRelativelyStrongPulsesFeature (not implemented) 
    R 11 RhythmicLoosenessFeature (not implemented) 
    R 12 PolyrhythmsFeature (not implemented) 
    R 13 RhythmicVariabilityFeature (not implemented) 
    R 14 BeatHistogramFeature (not implemented) 
    R 15 NoteDensityFeature (not implemented) 
    R 17 AverageNoteDurationFeature (not implemented) 
    R 18 VariabilityOfNoteDurationFeature (not implemented) 
    R 19 MaximumNoteDurationFeature (not implemented) 
    R 20 MinimumNoteDurationFeature (not implemented) 
    R 21 StaccatoIncidenceFeature (not implemented) 
    R 22 AverageTimeBetweenAttacksFeature (not implemented) 
    R 23 VariabilityOfTimeBetweenAttacksFeature (not implemented) 
    R 24 AverageTimeBetweenAttacksForEachVoiceFeature (not implemented) 
    R 25 AverageVariabilityOfTimeBetweenAttacksForEachVoiceFeature (not implemented) 
    R 30 InitialTempoFeature (not implemented) 
    R 31 InitialTimeSignatureFeature 
    R 32 CompoundOrSimpleMeterFeature 
    R 33 TripleMeterFeature 
    R 34 QuintupleMeterFeature 
    R 35 ChangesOfMeterFeature 
    T 1 MaximumNumberOfIndependentVoicesFeature (not implemented) 
    T 2 AverageNumberOfIndependentVoicesFeature (not implemented) 
    T 3 VariabilityOfNumberOfIndependentVoicesFeature (not implemented) 
    T 4 VoiceEqualityNumberOfNotesFeature (not implemented) 
    T 5 VoiceEqualityNoteDurationFeature (not implemented) 
    T 6 VoiceEqualityDynamicsFeature (not implemented) 
    T 7 VoiceEqualityMelodicLeapsFeature (not implemented) 
    T 8 VoiceEqualityRangeFeature (not implemented) 
    T 9 ImportanceOfLoudestVoiceFeature (not implemented) 
    T 10 RelativeRangeOfLoudestVoiceFeature (not implemented) 
    T 12 RangeOfHighestLineFeature (not implemented) 
    T 13 RelativeNoteDensityOfHighestLineFeature (not implemented) 
    T 15 MelodicIntervalsInLowestLineFeature (not implemented) 
    T 20 VoiceSeparationFeature (not implemented) 

AcousticGuitarFractionFeature
-----------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: AcousticGuitarFractionFeature(dataOrStream=None, *arguments, **keywords)

    A feature exractor that extracts the fraction of all Note Ons belonging to acoustic guitar patches (General MIDI patches 25 to 26). 

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.AcousticGuitar())
    >>> s1.repeatAppend(note.Note(), 3)
    >>> s1.append(instrument.Tuba())
    >>> s1.append(note.Note())
    >>> fe = features.jSymbolic.AcousticGuitarFractionFeature(s1)
    >>> fe.extract().vector
    [0.75] 

    **AcousticGuitarFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AcousticGuitarFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AmountOfArpeggiationFeature
---------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AmountOfArpeggiationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.AmountOfArpeggiationFeature(s)
    >>> f = fe.extract()
    >>> f.name
    'Amount of Arpeggiation' 

    **AmountOfArpeggiationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AmountOfArpeggiationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageMelodicIntervalFeature
-----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageMelodicIntervalFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.AverageMelodicIntervalFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [2.0714...] 

    **AverageMelodicIntervalFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageMelodicIntervalFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageNoteDurationFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageNoteDurationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageNoteDurationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageNoteDurationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageNoteToNoteDynamicsChangeFeature
--------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageNoteToNoteDynamicsChangeFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageNoteToNoteDynamicsChangeFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageNoteToNoteDynamicsChangeFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageNumberOfIndependentVoicesFeature
---------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageNumberOfIndependentVoicesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageNumberOfIndependentVoicesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageNumberOfIndependentVoicesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageRangeOfGlissandosFeature
-------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageRangeOfGlissandosFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageRangeOfGlissandosFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageRangeOfGlissandosFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageTimeBetweenAttacksFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageTimeBetweenAttacksFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageTimeBetweenAttacksFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageTimeBetweenAttacksFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageTimeBetweenAttacksForEachVoiceFeature
--------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageTimeBetweenAttacksForEachVoiceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageTimeBetweenAttacksForEachVoiceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageTimeBetweenAttacksForEachVoiceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


AverageVariabilityOfTimeBetweenAttacksForEachVoiceFeature
---------------------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: AverageVariabilityOfTimeBetweenAttacksForEachVoiceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **AverageVariabilityOfTimeBetweenAttacksForEachVoiceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **AverageVariabilityOfTimeBetweenAttacksForEachVoiceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


BasicPitchHistogramFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: BasicPitchHistogramFeature(dataOrStream=None, *arguments, **keywords)

    A feature exractor that finds a features array with bins corresponding to the values of the basic pitch histogram. 

    >>> from music21 import *
    >>> s = corpus.parse('bwv66.6')
    >>> fe = features.jSymbolic.BasicPitchHistogramFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.052631578..., 0.0, 0.0, 0.052631578..., 0.05263157894..., 0.2631578..., 0.0, 0.3157894..., 0.1052631..., 0.0, 0.052631..., 0.157894736..., 0.5263157..., 0.0, 0.368421052..., 0.6315789473..., 0.105263157..., 0.78947368..., 0.0, 1.0, 0.52631578..., 0.052631578..., 0.736842105..., 0.1578947..., 0.9473684..., 0.0, 0.36842105..., 0.47368421..., 0.0, 0.42105263..., 0.0, 0.36842105..., 0.0, 0.0, 0.052631578..., 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] 

    **BasicPitchHistogramFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **BasicPitchHistogramFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


BeatHistogramFeature
--------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: BeatHistogramFeature(dataOrStream=None, *arguments, **keywords)

    A feature exractor that finds a feature array with entries corresponding to the frequency values of each of the bins of the beat histogram (except the first 40 empty ones). 

    >>> from music21 import *

    **BeatHistogramFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **BeatHistogramFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


BrassFractionFeature
--------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: BrassFractionFeature(dataOrStream=None, *arguments, **keywords)

    A feature exractor that extracts the fraction of all Note Ons belonging to brass patches (General MIDI patches 57 or 68). 

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.SopranoSaxophone())
    >>> s1.repeatAppend(note.Note(), 6)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 4)
    >>> fe = features.jSymbolic.BrassFractionFeature(s1)
    >>> print fe.extract().vector[0]
    0.4 

    **BrassFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **BrassFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ChangesOfMeterFeature
---------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: ChangesOfMeterFeature(dataOrStream=None, *arguments, **keywords)

    A feature exractor that sets the feature to 1 if the time signature is changed one or more times during the recording. 

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(meter.TimeSignature('3/4'))
    >>> s2 = stream.Stream()
    >>> s2.append(meter.TimeSignature('3/4'))
    >>> s2.append(meter.TimeSignature('4/4'))
    >>> fe = features.jSymbolic.ChangesOfMeterFeature(s1)
    >>> fe.extract().vector
    [0] 
    >>> fe.setData(s2) # change the data
    >>> fe.extract().vector
    [1] 

    

    **ChangesOfMeterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ChangesOfMeterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ChromaticMotionFeature
----------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: ChromaticMotionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **ChromaticMotionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ChromaticMotionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


CombinedStrengthOfTwoStrongestRhythmicPulsesFeature
---------------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: CombinedStrengthOfTwoStrongestRhythmicPulsesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **CombinedStrengthOfTwoStrongestRhythmicPulsesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **CombinedStrengthOfTwoStrongestRhythmicPulsesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


CompoundOrSimpleMeterFeature
----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: CompoundOrSimpleMeterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(meter.TimeSignature('3/4'))
    >>> s2 = stream.Stream()
    >>> s2.append(meter.TimeSignature('9/8'))
    >>> fe = features.jSymbolic.CompoundOrSimpleMeterFeature(s1)
    >>> fe.extract().vector
    [0] 
    >>> fe.setData(s2) # change the data
    >>> fe.extract().vector
    [1] 

    **CompoundOrSimpleMeterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **CompoundOrSimpleMeterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


DirectionOfMotionFeature
------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: DirectionOfMotionFeature(dataOrStream=None, *arguments, **keywords)

    Returns the fraction of melodic intervals that are rising rather than falling.  Unisons are omitted 

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.DirectionOfMotionFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0.5263...] 

    **DirectionOfMotionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **DirectionOfMotionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


DistanceBetweenMostCommonMelodicIntervalsFeature
------------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: DistanceBetweenMostCommonMelodicIntervalsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.DistanceBetweenMostCommonMelodicIntervalsFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [2] 

    **DistanceBetweenMostCommonMelodicIntervalsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **DistanceBetweenMostCommonMelodicIntervalsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


DominantSpreadFeature
---------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: DominantSpreadFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **DominantSpreadFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **DominantSpreadFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


DurationFeature
---------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: DurationFeature(dataOrStream=None, *arguments, **keywords)

    A feature extractor that extracts the duration in seconds. 

    >>> from music21 import *


DurationOfMelodicArcsFeature
----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: DurationOfMelodicArcsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.DurationOfMelodicArcsFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [3.1666...] 

    **DurationOfMelodicArcsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **DurationOfMelodicArcsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ElectricGuitarFractionFeature
-----------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: ElectricGuitarFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.ElectricGuitar())
    >>> s1.repeatAppend(note.Note(), 4)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 4)
    >>> fe = features.jSymbolic.ElectricGuitarFractionFeature(s1)
    >>> fe.extract().vector
    [0.5] 

    **ElectricGuitarFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ElectricGuitarFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ElectricInstrumentFractionFeature
---------------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: ElectricInstrumentFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.ElectricOrgan())
    >>> s1.repeatAppend(note.Note(), 8)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 2)
    >>> fe = features.jSymbolic.ElectricInstrumentFractionFeature(s1)
    >>> print fe.extract().vector[0]
    0.8 

    **ElectricInstrumentFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ElectricInstrumentFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


FifthsPitchHistogramFeature
---------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: FifthsPitchHistogramFeature(dataOrStream=None, *arguments, **keywords)

    A feature array with bins corresponding to the values of the 5ths pitch class histogram. 

    

    >>> from music21 import *
    >>> s = corpus.parse('bwv66.6')
    >>> fe = features.jSymbolic.FifthsPitchHistogramFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0.0, 0.0, 0.375, 0.6875, 0.5, 0.875, 0.90625, 1.0, 0.4375, 0.03125, 0.09375, 0.1875] 

    **FifthsPitchHistogramFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **FifthsPitchHistogramFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


GlissandoPrevalenceFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: GlissandoPrevalenceFeature(dataOrStream=None, *arguments, **keywords)

    Not yet implemented in music21 

    >>> from music21 import *

    **GlissandoPrevalenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **GlissandoPrevalenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


HarmonicityOfTwoStrongestRhythmicPulsesFeature
----------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: HarmonicityOfTwoStrongestRhythmicPulsesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **HarmonicityOfTwoStrongestRhythmicPulsesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **HarmonicityOfTwoStrongestRhythmicPulsesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ImportanceOfBassRegisterFeature
-------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: ImportanceOfBassRegisterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.ImportanceOfBassRegisterFeature(s)
    >>> fe.extract().vector
    [0.266666...] 

    **ImportanceOfBassRegisterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ImportanceOfBassRegisterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ImportanceOfHighRegisterFeature
-------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: ImportanceOfHighRegisterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.ImportanceOfHighRegisterFeature(s)
    >>> fe.extract().vector
    [0.0] 

    **ImportanceOfHighRegisterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ImportanceOfHighRegisterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ImportanceOfLoudestVoiceFeature
-------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: ImportanceOfLoudestVoiceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **ImportanceOfLoudestVoiceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ImportanceOfLoudestVoiceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ImportanceOfMiddleRegisterFeature
---------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: ImportanceOfMiddleRegisterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.ImportanceOfMiddleRegisterFeature(s)
    >>> fe.extract().vector
    [0.73333333...] 

    **ImportanceOfMiddleRegisterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ImportanceOfMiddleRegisterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


InitialTempoFeature
-------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: InitialTempoFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **InitialTempoFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **InitialTempoFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


InitialTimeSignatureFeature
---------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: InitialTimeSignatureFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(meter.TimeSignature('3/4'))
    >>> fe = features.jSymbolic.InitialTimeSignatureFeature(s1)
    >>> fe.extract().vector
    [3, 4] 

    

    **InitialTimeSignatureFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **InitialTimeSignatureFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


InstrumentFractionFeature
-------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: InstrumentFractionFeature(dataOrStream=None, *arguments, **keywords)

    This subclass is in-turn subclassed by all FeatureExtractors that look at the proportional usage of an Insutrment 


IntervalBetweenStrongestPitchClassesFeature
-------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: IntervalBetweenStrongestPitchClassesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.IntervalBetweenStrongestPitchClassesFeature(s)
    >>> fe.extract().vector
    [2] 

    **IntervalBetweenStrongestPitchClassesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **IntervalBetweenStrongestPitchClassesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


IntervalBetweenStrongestPitchesFeature
--------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: IntervalBetweenStrongestPitchesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.IntervalBetweenStrongestPitchesFeature(s)
    >>> fe.extract().vector
    [2] 

    **IntervalBetweenStrongestPitchesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **IntervalBetweenStrongestPitchesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MaximumNoteDurationFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MaximumNoteDurationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MaximumNoteDurationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MaximumNoteDurationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MaximumNumberOfIndependentVoicesFeature
---------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MaximumNumberOfIndependentVoicesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MaximumNumberOfIndependentVoicesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MaximumNumberOfIndependentVoicesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MelodicFifthsFeature
--------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MelodicFifthsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MelodicFifthsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MelodicFifthsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MelodicIntervalHistogramFeature
-------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MelodicIntervalHistogramFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MelodicIntervalHistogramFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [1.0, 0.2222..., 0.777777777..., 0.44444..., 0.1111..., 0.44444..., 0.11111..., 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0] 

    **MelodicIntervalHistogramFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MelodicIntervalHistogramFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MelodicIntervalsInLowestLineFeature
-----------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MelodicIntervalsInLowestLineFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MelodicIntervalsInLowestLineFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MelodicIntervalsInLowestLineFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MelodicOctavesFeature
---------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MelodicOctavesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MelodicOctavesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MelodicOctavesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MelodicThirdsFeature
--------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MelodicThirdsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MelodicThirdsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MelodicThirdsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MelodicTritonesFeature
----------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MelodicTritonesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MelodicTritonesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MelodicTritonesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MinimumNoteDurationFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MinimumNoteDurationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **MinimumNoteDurationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MinimumNoteDurationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MostCommonMelodicIntervalFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MostCommonMelodicIntervalFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MostCommonMelodicIntervalFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0] 

    **MostCommonMelodicIntervalFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MostCommonMelodicIntervalFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MostCommonMelodicIntervalPrevalenceFeature
------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MostCommonMelodicIntervalPrevalenceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MostCommonMelodicIntervalPrevalenceFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0.3214285...] 

    **MostCommonMelodicIntervalPrevalenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MostCommonMelodicIntervalPrevalenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MostCommonPitchClassFeature
---------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MostCommonPitchClassFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MostCommonPitchClassFeature(s)
    >>> fe.extract().vector
    [5] 

    **MostCommonPitchClassFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MostCommonPitchClassFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MostCommonPitchClassPrevalenceFeature
-------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MostCommonPitchClassPrevalenceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MostCommonPitchClassPrevalenceFeature(s)
    >>> fe.extract().vector
    [0.333333333...] 

    **MostCommonPitchClassPrevalenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MostCommonPitchClassPrevalenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MostCommonPitchFeature
----------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MostCommonPitchFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MostCommonPitchFeature(s)
    >>> fe.extract().vector
    [0.5078125] 

    **MostCommonPitchFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MostCommonPitchFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


MostCommonPitchPrevalenceFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: MostCommonPitchPrevalenceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.MostCommonPitchPrevalenceFeature(s)
    >>> fe.extract().vector[0] + .0001  # slightly less than .3 on 32-bit systems
    0.3... 

    **MostCommonPitchPrevalenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **MostCommonPitchPrevalenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NoteDensityFeature
------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NoteDensityFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **NoteDensityFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NoteDensityFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NotePrevalenceOfPitchedInstrumentsFeature
-----------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NotePrevalenceOfPitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.AcousticGuitar())
    >>> s1.repeatAppend(note.Note(), 4)
    >>> s1.append(instrument.Tuba())
    >>> s1.append(note.Note())
    >>> fe = features.jSymbolic.NotePrevalenceOfPitchedInstrumentsFeature(s1)
    >>> fe.extract().vector
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.8..., 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.2..., 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 

    

    **NotePrevalenceOfPitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NotePrevalenceOfPitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NotePrevalenceOfUnpitchedInstrumentsFeature
-------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NotePrevalenceOfUnpitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **NotePrevalenceOfUnpitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NotePrevalenceOfUnpitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfCommonMelodicIntervalsFeature
-------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfCommonMelodicIntervalsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.NumberOfCommonMelodicIntervalsFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [4] 

    **NumberOfCommonMelodicIntervalsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfCommonMelodicIntervalsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfCommonPitchesFeature
----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfCommonPitchesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.NumberOfCommonPitchesFeature(s)
    >>> fe.extract().vector
    [4] 

    **NumberOfCommonPitchesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfCommonPitchesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfModeratePulsesFeature
-----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfModeratePulsesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **NumberOfModeratePulsesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfModeratePulsesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfPitchedInstrumentsFeature
---------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfPitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.AcousticGuitar())
    >>> s1.append(note.Note())
    >>> s1.append(instrument.Tuba())
    >>> s1.append(note.Note())
    >>> fe = features.jSymbolic.NumberOfPitchedInstrumentsFeature(s1)
    >>> fe.extract().vector
    [2] 

    

    **NumberOfPitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfPitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfRelativelyStrongPulsesFeature
-------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfRelativelyStrongPulsesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **NumberOfRelativelyStrongPulsesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfRelativelyStrongPulsesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfStrongPulsesFeature
---------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfStrongPulsesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **NumberOfStrongPulsesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfStrongPulsesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


NumberOfUnpitchedInstrumentsFeature
-----------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: NumberOfUnpitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **NumberOfUnpitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **NumberOfUnpitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


OrchestralStringsFractionFeature
--------------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: OrchestralStringsFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.Violoncello())
    >>> s1.repeatAppend(note.Note(), 4)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 6)
    >>> fe = features.jSymbolic.OrchestralStringsFractionFeature(s1)
    >>> print fe.extract().vector[0]
    0.4 

    **OrchestralStringsFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **OrchestralStringsFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


OverallDynamicRangeFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: OverallDynamicRangeFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **OverallDynamicRangeFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **OverallDynamicRangeFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PercussionPrevalenceFeature
---------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PercussionPrevalenceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **PercussionPrevalenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PercussionPrevalenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PitchClassDistributionFeature
-----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PitchClassDistributionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('bwv66.6')
    >>> fe = features.jSymbolic.PitchClassDistributionFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0.0, 1.0, 0.375, 0.03125, 0.5, 0.1875, 0.90625, 0.0, 0.4375, 0.6875, 0.09375, 0.875] 

    

    **PitchClassDistributionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PitchClassDistributionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PitchClassVarietyFeature
------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PitchClassVarietyFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.PitchClassVarietyFeature(s)
    >>> fe.extract().vector
    [8] 

    **PitchClassVarietyFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PitchClassVarietyFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PitchVarietyFeature
-------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PitchVarietyFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.PitchVarietyFeature(s)
    >>> fe.extract().vector
    [12] 

    **PitchVarietyFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PitchVarietyFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PitchedInstrumentsPresentFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PitchedInstrumentsPresentFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.AcousticGuitar())
    >>> s1.append(note.Note())
    >>> s1.append(instrument.Tuba())
    >>> s1.append(note.Note())
    >>> fe = features.jSymbolic.PitchedInstrumentsPresentFeature(s1)
    >>> fe.extract().vector
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 

    **PitchedInstrumentsPresentFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PitchedInstrumentsPresentFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PolyrhythmsFeature
------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PolyrhythmsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **PolyrhythmsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PolyrhythmsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


PrimaryRegisterFeature
----------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: PrimaryRegisterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.PrimaryRegisterFeature(s)
    >>> fe.extract().vector
    [54.91666666...] 

    **PrimaryRegisterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **PrimaryRegisterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


QualityFeature
--------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: QualityFeature(dataOrStream=None, *arguments, **keywords)

    Set to 0 if the key signature indicates that a recording is major, set to 1 if it indicates that it is minor.  In jSymbolic, this is set to 0 if key signature is unknown. See features.native.QualityFeature for a music21 improvement on this method 

    >>> from music21 import *
    >>> mozart155mvmt2 = corpus.parse('mozart/k155', 2)
    >>> fe = features.jSymbolic.QualityFeature(mozart155mvmt2)
    >>> f = fe.extract()
    >>> f.vector
    [0] 

    

    

    

    **QualityFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **QualityFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


QuintupleMeterFeature
---------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: QuintupleMeterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(meter.TimeSignature('5/4'))
    >>> s2 = stream.Stream()
    >>> s2.append(meter.TimeSignature('3/4'))
    >>> fe = features.jSymbolic.QuintupleMeterFeature(s1)
    >>> fe.extract().vector
    [1] 
    >>> fe.setData(s2) # change the data
    >>> fe.extract().vector
    [0] 

    **QuintupleMeterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **QuintupleMeterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RangeFeature
------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RangeFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.RangeFeature(s)
    >>> fe.extract().vector
    [31] 

    **RangeFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RangeFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RangeOfHighestLineFeature
-------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RangeOfHighestLineFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **RangeOfHighestLineFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RangeOfHighestLineFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RelativeNoteDensityOfHighestLineFeature
---------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RelativeNoteDensityOfHighestLineFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **RelativeNoteDensityOfHighestLineFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RelativeNoteDensityOfHighestLineFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RelativeRangeOfLoudestVoiceFeature
----------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RelativeRangeOfLoudestVoiceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **RelativeRangeOfLoudestVoiceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RelativeRangeOfLoudestVoiceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RelativeStrengthOfMostCommonIntervalsFeature
--------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RelativeStrengthOfMostCommonIntervalsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.RelativeStrengthOfMostCommonIntervalsFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [0.77777...] 

    **RelativeStrengthOfMostCommonIntervalsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RelativeStrengthOfMostCommonIntervalsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RelativeStrengthOfTopPitchClassesFeature
----------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RelativeStrengthOfTopPitchClassesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.RelativeStrengthOfTopPitchClassesFeature(s)
    >>> fe.extract().vector
    [0.5] 

    **RelativeStrengthOfTopPitchClassesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RelativeStrengthOfTopPitchClassesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RelativeStrengthOfTopPitchesFeature
-----------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RelativeStrengthOfTopPitchesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.RelativeStrengthOfTopPitchesFeature(s)
    >>> fe.extract().vector
    [0.5555555555...] 

    **RelativeStrengthOfTopPitchesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RelativeStrengthOfTopPitchesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RepeatedNotesFeature
--------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RepeatedNotesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **RepeatedNotesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RepeatedNotesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RhythmicLoosenessFeature
------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RhythmicLoosenessFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **RhythmicLoosenessFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RhythmicLoosenessFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


RhythmicVariabilityFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: RhythmicVariabilityFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **RhythmicVariabilityFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **RhythmicVariabilityFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


SaxophoneFractionFeature
------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: SaxophoneFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.SopranoSaxophone())
    >>> s1.repeatAppend(note.Note(), 6)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 4)
    >>> fe = features.jSymbolic.SaxophoneFractionFeature(s1)
    >>> print fe.extract().vector[0]
    0.6 

    

    **SaxophoneFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **SaxophoneFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


SecondStrongestRhythmicPulseFeature
-----------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: SecondStrongestRhythmicPulseFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **SecondStrongestRhythmicPulseFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **SecondStrongestRhythmicPulseFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


SizeOfMelodicArcsFeature
------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: SizeOfMelodicArcsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s = corpus.parse('hwv56/movement3-05.md')
    >>> fe = features.jSymbolic.SizeOfMelodicArcsFeature(s)
    >>> f = fe.extract()
    >>> f.vector
    [8.5] 

    **SizeOfMelodicArcsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **SizeOfMelodicArcsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StaccatoIncidenceFeature
------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StaccatoIncidenceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StaccatoIncidenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StaccatoIncidenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StepwiseMotionFeature
---------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StepwiseMotionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StepwiseMotionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StepwiseMotionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StrengthOfSecondStrongestRhythmicPulseFeature
---------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StrengthOfSecondStrongestRhythmicPulseFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StrengthOfSecondStrongestRhythmicPulseFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StrengthOfSecondStrongestRhythmicPulseFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StrengthOfStrongestRhythmicPulseFeature
---------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StrengthOfStrongestRhythmicPulseFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StrengthOfStrongestRhythmicPulseFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StrengthOfStrongestRhythmicPulseFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StrengthRatioOfTwoStrongestRhythmicPulsesFeature
------------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StrengthRatioOfTwoStrongestRhythmicPulsesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StrengthRatioOfTwoStrongestRhythmicPulsesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StrengthRatioOfTwoStrongestRhythmicPulsesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StringEnsembleFractionFeature
-----------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: StringEnsembleFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StringEnsembleFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StringEnsembleFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StringKeyboardFractionFeature
-----------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: StringKeyboardFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.Piano())
    >>> s1.repeatAppend(note.Note(), 9)
    >>> s1.append(instrument.Tuba())
    >>> s1.append(note.Note())
    >>> fe = features.jSymbolic.StringKeyboardFractionFeature(s1)
    >>> fe.extract().vector
    [0.9...] 

    **StringKeyboardFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StringKeyboardFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StrongTonalCentresFeature
-------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StrongTonalCentresFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StrongTonalCentresFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StrongTonalCentresFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


StrongestRhythmicPulseFeature
-----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: StrongestRhythmicPulseFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **StrongestRhythmicPulseFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **StrongestRhythmicPulseFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


TimePrevalenceOfPitchedInstrumentsFeature
-----------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: TimePrevalenceOfPitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **TimePrevalenceOfPitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **TimePrevalenceOfPitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


TripleMeterFeature
------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: TripleMeterFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(meter.TimeSignature('5/4'))
    >>> s2 = stream.Stream()
    >>> s2.append(meter.TimeSignature('3/4'))
    >>> fe = features.jSymbolic.TripleMeterFeature(s1)
    >>> fe.extract().vector
    [0] 
    >>> fe.setData(s2) # change the data
    >>> fe.extract().vector
    [1] 

    **TripleMeterFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **TripleMeterFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


UnpitchedInstrumentsPresentFeature
----------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: UnpitchedInstrumentsPresentFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **UnpitchedInstrumentsPresentFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **UnpitchedInstrumentsPresentFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariabilityOfNoteDurationFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariabilityOfNoteDurationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VariabilityOfNoteDurationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariabilityOfNoteDurationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariabilityOfNotePrevalenceOfPitchedInstrumentsFeature
------------------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariabilityOfNotePrevalenceOfPitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.AcousticGuitar())
    >>> s1.repeatAppend(note.Note(), 5)
    >>> s1.append(instrument.Tuba())
    >>> s1.append(note.Note())
    >>> fe = features.jSymbolic.VariabilityOfNotePrevalenceOfPitchedInstrumentsFeature(s1)
    >>> fe.extract().vector
    [0.33333...] 

    

    **VariabilityOfNotePrevalenceOfPitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariabilityOfNotePrevalenceOfPitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariabilityOfNotePrevalenceOfUnpitchedInstrumentsFeature
--------------------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariabilityOfNotePrevalenceOfUnpitchedInstrumentsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VariabilityOfNotePrevalenceOfUnpitchedInstrumentsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariabilityOfNotePrevalenceOfUnpitchedInstrumentsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariabilityOfNumberOfIndependentVoicesFeature
---------------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariabilityOfNumberOfIndependentVoicesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VariabilityOfNumberOfIndependentVoicesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariabilityOfNumberOfIndependentVoicesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariabilityOfTimeBetweenAttacksFeature
--------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariabilityOfTimeBetweenAttacksFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VariabilityOfTimeBetweenAttacksFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariabilityOfTimeBetweenAttacksFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariationOfDynamicsFeature
--------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariationOfDynamicsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VariationOfDynamicsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariationOfDynamicsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VariationOfDynamicsInEachVoiceFeature
-------------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VariationOfDynamicsInEachVoiceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VariationOfDynamicsInEachVoiceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VariationOfDynamicsInEachVoiceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VibratoPrevalenceFeature
------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VibratoPrevalenceFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VibratoPrevalenceFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VibratoPrevalenceFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


ViolinFractionFeature
---------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: ViolinFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.Violin())
    >>> s1.repeatAppend(note.Note(), 2)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 8)
    >>> fe = features.jSymbolic.ViolinFractionFeature(s1)
    >>> fe.extract().vector
    [0.2...] 

    **ViolinFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **ViolinFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VoiceEqualityDynamicsFeature
----------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VoiceEqualityDynamicsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VoiceEqualityDynamicsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VoiceEqualityDynamicsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VoiceEqualityMelodicLeapsFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VoiceEqualityMelodicLeapsFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VoiceEqualityMelodicLeapsFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VoiceEqualityMelodicLeapsFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VoiceEqualityNoteDurationFeature
--------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VoiceEqualityNoteDurationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VoiceEqualityNoteDurationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VoiceEqualityNoteDurationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VoiceEqualityNumberOfNotesFeature
---------------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VoiceEqualityNumberOfNotesFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VoiceEqualityNumberOfNotesFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VoiceEqualityNumberOfNotesFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VoiceEqualityRangeFeature
-------------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VoiceEqualityRangeFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VoiceEqualityRangeFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VoiceEqualityRangeFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


VoiceSeparationFeature
----------------------

Inherits from: :class:`~music21.features.base.FeatureExtractor`

.. class:: VoiceSeparationFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *

    **VoiceSeparationFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **VoiceSeparationFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


WoodwindsFractionFeature
------------------------

Inherits from: :class:`~music21.features.jSymbolic.InstrumentFractionFeature`, :class:`~music21.features.base.FeatureExtractor`

.. class:: WoodwindsFractionFeature(dataOrStream=None, *arguments, **keywords)

    

    >>> from music21 import *
    >>> s1 = stream.Stream()
    >>> s1.append(instrument.Flute())
    >>> s1.repeatAppend(note.Note(), 3)
    >>> s1.append(instrument.Tuba())
    >>> s1.repeatAppend(note.Note(), 7)
    >>> fe = features.jSymbolic.WoodwindsFractionFeature(s1)
    >>> print fe.extract().vector[0]
    0.3 

    **WoodwindsFractionFeature** **attributes**

        Attributes without Documentation: `id`

        Attributes inherited from :class:`~music21.features.base.FeatureExtractor`: :attr:`~music21.features.base.FeatureExtractor.normalize`, :attr:`~music21.features.base.FeatureExtractor.description`, :attr:`~music21.features.base.FeatureExtractor.stream`, :attr:`~music21.features.base.FeatureExtractor.discrete`, :attr:`~music21.features.base.FeatureExtractor.dimensions`, :attr:`~music21.features.base.FeatureExtractor.data`, :attr:`~music21.features.base.FeatureExtractor.isSequential`, :attr:`~music21.features.base.FeatureExtractor.name`

    **WoodwindsFractionFeature** **methods**

        Methods inherited from :class:`~music21.features.base.FeatureExtractor`: :meth:`~music21.features.base.FeatureExtractor.extract`, :meth:`~music21.features.base.FeatureExtractor.getAttributeLabels`, :meth:`~music21.features.base.FeatureExtractor.getBlankFeature`, :meth:`~music21.features.base.FeatureExtractor.setData`


