subset
Create datastore with subset of files
Description
Examples
Create Datastore with Subset Based on File Name
subset
creates an audio datastore containing a subset of the files of the original datastore.
Specify the file path to the audio samples included with Audio Toolbox™. Create an audio datastore that points to the specified folder.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder)
ADS = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav'; ' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav'; ' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav' ... and 36 more } Folders: { ' .../Bdoc24b.2679053/build/runnable/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' OutputEnvironment: 'cpu' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "opus" "mp3" "mp4" "m4a"] DefaultOutputFormat: "wav"
Create a logical vector indicating whether the file names in the audio datastore contain 'Guitar'
.
fileContainsGuitar = cellfun(@(c)contains(c,'Guitar'),ADS.Files)
fileContainsGuitar = 39x1 logical array
0
0
0
0
0
0
0
0
0
0
⋮
Call subset
with the audio datastore and the indices corresponding to the files you want create a new audio datastore from.
ADSsubset = subset(ADS,fileContainsGuitar)
ADSsubset = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/RockGuitar-16-44p1-stereo-72secs.wav'; ' .../matlab/toolbox/audio/samples/RockGuitar-16-96-stereo-72secs.flac'; ' .../runnable/matlab/toolbox/audio/samples/SoftGuitar-44p1_mono-10mins.ogg' } Folders: { ' .../Bdoc24b.2679053/build/runnable/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' OutputEnvironment: 'cpu' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "opus" "mp3" "mp4" "m4a"] DefaultOutputFormat: "wav"
Create Datastore with Every Other File
Specify the file path to the audio samples included with Audio Toolbox™. Create an audio datastore that points to the specified folder.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder)
ADS = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav'; ' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav'; ' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav' ... and 36 more } Folders: { ' .../Bdoc24b.2679053/build/runnable/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' OutputEnvironment: 'cpu' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "opus" "mp3" "mp4" "m4a"] DefaultOutputFormat: "wav"
Create an audio datastore containing every other file of the original datastore.
indices = 1:2:numel(ADS.Files); ADSsubset = subset(ADS,indices)
ADSsubset = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav'; ' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav'; ' .../runnable/matlab/toolbox/audio/samples/Click-16-44p1-mono-0.2secs.wav' ... and 17 more } Folders: { ' .../Bdoc24b.2679053/build/runnable/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' OutputEnvironment: 'cpu' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "opus" "mp3" "mp4" "m4a"] DefaultOutputFormat: "wav"
Input Arguments
ADS
— Audio datastore
audioDatastore
object
Specify ADS
as an audioDatastore
object.
indices
— Indices of files for subset
vector of indices | logical vector
Output Arguments
ADSsubset
— Subset of audio datastore
audioDatastore
object
Subset of audio datastore, returned as an audioDatastore
object.
Version History
Introduced in R2018b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)