Разделение хранилища данных в соответствии с указанными пропорциями метки
разделяет аудиофайлы в [ADS1,ADS2] = splitEachLabel(ADS,p)ADS в два новых хранилища данных, ADS1 и ADS2. Новое хранилище данных ADS1 содержит первый p файлы из каждой метки, и ADS2 содержит оставшиеся файлы из каждой метки. p может быть либо числом от 0 до 1, исключающим, указывающим процент файлов от каждой метки для назначения ADS1, или целое число, указывающее абсолютное количество файлов из каждой метки для назначения ADS1.
разбивает хранилище данных на [ADS1,...,ADSM] = splitEachLabel(ADS,p1,...,pN)N+1 новые хранилища данных. Новое хранилище данных ADS1 содержит первый p1 файлы из каждой метки, следующее новое хранилище данных ADS2 содержит следующий p2 файлы и так далее. Если p1,…,pN представляют количество файлов, то их сумма должна быть не больше количества файлов в наименьшей метке в исходном хранилище данных, ADS.
___ = splitEachLabel(___,'randomized') случайным образом назначает определенную долю файлов из каждой метки новым хранилищам данных.
___ = splitEachLabel(___, задает свойства новых хранилищ данных с использованием одного или нескольких аргументов пары имя-значение. Например, можно указать метки для разделения Name,Value)'Include','labelname'.
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder,'FileExtensions','.wav');
Добавить метку A к первой половине файлов и метке B ко второй половине. Если имеется нечетное количество файлов, назначьте дополнительный файл меткой B. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечена B.
labels = [repmat({'A'},1,floor(numel(ADS.Files)/2)), ...
repmat({'B'},1,ceil(numel(ADS.Files)/2))];
ADS.Labels = labels;
countEachLabel(ADS)ans=2×2 table
Label Count
_____ _____
A 10
B 10
Разделение ADS на два хранилища данных, ADS1 и ADS2, указывая, что каждое новое хранилище данных содержит пятьдесят процентов каждой метки и соответствующих файлов. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечены B для каждого из новых хранилищ данных.
[ADS1,ADS2] = splitEachLabel(ADS,0.5)
ADS1 =
audioDatastore with properties:
Files: {
' .../build/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 7 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 7 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS2 =
audioDatastore with properties:
Files: {
' .../build/matlab/toolbox/audio/samples/Engine-16-44p1-stereo-20sec.wav';
' .../build/matlab/toolbox/audio/samples/FemaleSpeech-16-8-mono-3secs.wav';
' .../BR2021ad/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav'
... and 7 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 7 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS1count = countEachLabel(ADS1)
ADS1count=2×2 table
Label Count
_____ _____
A 5
B 5
ADS2count = countEachLabel(ADS2)
ADS2count=2×2 table
Label Count
_____ _____
A 5
B 5
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder,'FileExtensions','.wav');
Добавить метку A к первой половине файлов и метке B ко второй половине. Если имеется нечетное количество файлов, назначьте дополнительный файл меткой B. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечена B.
labels = [repmat({'A'},1,floor(numel(ADS.Files)/2)), ...
repmat({'B'},1,ceil(numel(ADS.Files)/2))];
ADS.Labels = labels;
countEachLabel(ADS)ans=2×2 table
Label Count
_____ _____
A 10
B 10
Разделение ADS на два хранилища данных, ADS1 и ADS2. Укажите, что ADS1 содержит четыре метки и соответствующий файл. ADS2 содержит оставшиеся метки и соответствующие файлы. Звонить countEachLabel подтвердить, что ADS1 содержит четыре файла с меткой A и четыре файла с меткой B, и что ADS2 содержит оставшиеся метки.
[ADS1,ADS2] = splitEachLabel(ADS,4)
ADS1 =
audioDatastore with properties:
Files: {
' .../build/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 5 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 5 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS2 =
audioDatastore with properties:
Files: {
' .../build/matlab/toolbox/audio/samples/Counting-16-44p1-mono-15secs.wav';
' .../build/matlab/toolbox/audio/samples/Engine-16-44p1-stereo-20sec.wav';
' .../build/matlab/toolbox/audio/samples/FemaleSpeech-16-8-mono-3secs.wav'
... and 9 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 9 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS1count = countEachLabel(ADS1)
ADS1count=2×2 table
Label Count
_____ _____
A 4
B 4
ADS2count = countEachLabel(ADS2)
ADS2count=2×2 table
Label Count
_____ _____
A 6
B 6
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder,'FileExtensions','.wav');
Добавить метку A к первой половине файлов и метке B ко второй половине. Если имеется нечетное количество файлов, назначьте дополнительный файл меткой B. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечена B.
labels = [repmat({'A'},1,floor(numel(ADS.Files)/2)), ...
repmat({'B'},1,ceil(numel(ADS.Files)/2))];
ADS.Labels = labels;
countEachLabel(ADS)ans=2×2 table
Label Count
_____ _____
A 10
B 10
Разделение ADS в три новых хранилища данных, ADS60, ADS10, и ADS30. Первое хранилище данных, ADS60, содержит первые 60% файлов с A и первые 60% файлов с B этикетка. ADS10 содержит следующие 10% файлов из каждой метки. ADS30 содержит оставшиеся 30% файлов с каждой метки. Если процент, примененный к метке, не приводит к целому числу файлов, splitEachLabel округляется до ближайшего целого числа.
[ADS60,ADS10,ADS30] = splitEachLabel(ADS,0.6,0.1)
ADS60 =
audioDatastore with properties:
Files: {
' .../build/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 9 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 9 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS10 =
audioDatastore with properties:
Files: {
' .../build/matlab/toolbox/audio/samples/FemaleSpeech-16-8-mono-3secs.wav';
' .../matlab/toolbox/audio/samples/TrainWhistle-16-44p1-mono-9secs.wav'
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'B'}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS30 =
audioDatastore with properties:
Files: {
' .../BR2021ad/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav';
' .../matlab/toolbox/audio/samples/JetAirplane-16-11p025-mono-16secs.wav';
' .../build/matlab/toolbox/audio/samples/Laughter-16-8-mono-4secs.wav'
... and 3 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 3 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Звонить countEachLabel для подтверждения правильного распределения меток для каждого хранилища данных.
countEachLabel(ADS60)
ans=2×2 table
Label Count
_____ _____
A 6
B 6
countEachLabel(ADS10)
ans=2×2 table
Label Count
_____ _____
A 1
B 1
countEachLabel(ADS30)
ans=2×2 table
Label Count
_____ _____
A 3
B 3
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder,'FileExtensions','.wav');
Добавить метку A к первой половине файлов и метке B ко второй половине. Если имеется нечетное количество файлов, назначьте дополнительный файл меткой B. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечена B.
labels = [repmat({'A'},1,floor(numel(ADS.Files)/2)), ...
repmat({'B'},1,ceil(numel(ADS.Files)/2))];
ADS.Labels = labels;
countEachLabel(ADS)ans=2×2 table
Label Count
_____ _____
A 10
B 10
Разделение ADS в три новых хранилища данных, ADS1, ADS2, и ADS3. Первое хранилище данных, ADS1, содержит первый файл с A и первый файл с помощью B этикетка. ADS2 содержит следующий файл из каждой метки. ADS3 содержит оставшиеся файлы из каждой метки. Если процент, примененный к метке, не приводит к целому числу файлов, splitEachLabel округляется до ближайшего целого числа.
[ADS1,ADS2,ADS3] = splitEachLabel(ADS,1,1)
ADS1 =
audioDatastore with properties:
Files: {
' .../build/matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav';
' .../matlab/toolbox/audio/samples/MainStreetOne-16-16-mono-12secs.wav'
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'B'}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS2 =
audioDatastore with properties:
Files: {
' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav';
' .../build/matlab/toolbox/audio/samples/NoisySpeech-16-22p5-mono-5secs.wav'
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'B'}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS3 =
audioDatastore with properties:
Files: {
' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav';
' .../build/matlab/toolbox/audio/samples/Click-16-44p1-mono-0.2secs.wav';
' .../build/matlab/toolbox/audio/samples/Counting-16-44p1-mono-15secs.wav'
... and 13 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 13 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Звонить countEachLabel для подтверждения правильного распределения меток для каждого хранилища данных.
countEachLabel(ADS1)
ans=2×2 table
Label Count
_____ _____
A 1
B 1
countEachLabel(ADS2)
ans=2×2 table
Label Count
_____ _____
A 1
B 1
countEachLabel(ADS3)
ans=2×2 table
Label Count
_____ _____
A 8
B 8
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder,'FileExtensions','.wav')
ADS =
audioDatastore with properties:
Files: {
' .../build/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 17 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
Labels: {}
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Добавить метку A к первой половине файлов и метке B ко второй половине. Если имеется нечетное количество файлов, назначьте дополнительный файл меткой B. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечена B.
labels = [repmat({'A'},1,floor(numel(ADS.Files)/2)), ...
repmat({'B'},1,ceil(numel(ADS.Files)/2))];
ADS.Labels = labels;
countEachLabel(ADS)ans=2×2 table
Label Count
_____ _____
A 10
B 10
Создание двух новых хранилищ данных из файлов в ADS путем случайного рисования из каждой метки. Первое хранилище данных, ADS1, содержит два случайных файла с A метка и два случайных файла с B этикетка. ADS2 содержит оставшиеся файлы из каждой метки.
[ADS1,ADS2] = splitEachLabel(ADS,2,'randomized')ADS1 =
audioDatastore with properties:
Files: {
' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav';
' .../build/matlab/toolbox/audio/samples/Engine-16-44p1-stereo-20sec.wav';
' .../matlab/toolbox/audio/samples/MainStreetOne-16-16-mono-12secs.wav'
... and 1 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'B' ... and 1 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS2 =
audioDatastore with properties:
Files: {
' .../build/matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav';
' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav';
' .../build/matlab/toolbox/audio/samples/Click-16-44p1-mono-0.2secs.wav'
... and 13 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 13 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder,'FileExtensions','.wav')
ADS =
audioDatastore with properties:
Files: {
' .../build/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 17 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
Labels: {}
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Добавить метку A к первой половине файлов и метке B ко второй половине. Если имеется нечетное количество файлов, назначьте дополнительный файл меткой B. Звонить countEachLabel для подтверждения того, что половина файлов помечена A и половина файлов помечена B.
labels = [repmat({'A'},1,floor(numel(ADS.Files)/2)), ...
repmat({'B'},1,ceil(numel(ADS.Files)/2))];
ADS.Labels = labels;
countEachLabel(ADS)
ans =
2x2 table
Label Count
_____ _____
A 10
B 10
Создание двух новых хранилищ данных из файлов в ADS, включая только файлы с A этикетка. ADS1 содержит первые 70% файлов с A этикетка, и ADS2 содержит оставшиеся 30% меток с A этикетка.
[ADS1,ADS2] = splitEachLabel(ADS,0.7,'Include','A')
ADS1 =
audioDatastore with properties:
Files: {
' .../build/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 4 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 4 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS2 =
audioDatastore with properties:
Files: {
' .../BR2021ad/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav';
' .../matlab/toolbox/audio/samples/JetAirplane-16-11p025-mono-16secs.wav';
' .../build/matlab/toolbox/audio/samples/Laughter-16-8-mono-4secs.wav'
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A'}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Эквивалентно, можно разделить только A путем исключения B этикетка.
[ADS1,ADS2] = splitEachLabel(ADS,0.7,'Exclude','B')
ADS1 =
audioDatastore with properties:
Files: {
' .../build/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 4 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A' ... and 4 more}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
ADS2 =
audioDatastore with properties:
Files: {
' .../BR2021ad/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav';
' .../matlab/toolbox/audio/samples/JetAirplane-16-11p025-mono-16secs.wav';
' .../build/matlab/toolbox/audio/samples/Laughter-16-8-mono-4secs.wav'
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
Labels: {'A'; 'A'; 'A'}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder)
ADS =
audioDatastore with properties:
Files: {
' .../build/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 31 more
}
Folders: {
'/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples'
}
AlternateFileSystemRoots: {}
OutputDataType: 'double'
Labels: {}
SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"]
DefaultOutputFormat: "wav"
Создайте таблицу меток с двумя переменными:
containsMusic - Может быть либо true или false.
instrument -- Может быть Guitar, Drums, или Unknown.
containsGuitar = contains(ADS.Files,'guitar','IgnoreCase',true); containsDrums = contains(ADS.Files,'drum','IgnoreCase',true); containsMusic = or(containsGuitar,containsDrums); instrument = strings(size(ADS.Files)); instrument(:) = "Unknown"; instrument(containsGuitar) = "Guitar"; instrument(containsDrums) = "Drums";
Назначьте таблицу меток Labels свойство хранилища аудиоданных для связывания строк таблицы меток со строками хранилища данных. Звонить countEachLabel для определения случаев containsMusic и instrument.
labels = table(containsMusic,instrument); ADS.Labels = labels; containsMusicCount = countEachLabel(ADS,'TableVariable','containsMusic')
containsMusicCount=2×2 table
containsMusic Count
_____________ _____
false 27
true 7
instrumentCount = countEachLabel(ADS,'TableVariable','instrument')
instrumentCount=3×2 table
instrument Count
__________ _____
Drums 4
Guitar 3
Unknown 27
Разделение хранилища данных ADS на два, в зависимости от того, содержит ли аудиофайл музыку. ADS1 содержит 70% аудиофайлов, содержащих музыку, и ADS2 содержит вызов восстановления. countEachLabel чтобы проверить, что отношение containsMusic == true кому containsMusic == false сохраняется для новых хранилищ данных в пределах округления.
[ADS1,ADS2] = splitEachLabel(ADS,0.7,'TableVariable','containsMusic'); ADS1_containsMusicCount = countEachLabel(ADS1,'TableVariable','containsMusic')
ADS1_containsMusicCount=2×2 table
containsMusic Count
_____________ _____
false 19
true 5
ADS2_containsMusicCount = countEachLabel(ADS2,'TableVariable','containsMusic')
ADS2_containsMusicCount=2×2 table
containsMusic Count
_____________ _____
false 8
true 2
Разделение хранилища данных ADS на два, на основе типа инструмента, присутствующего в аудиофайле. ADS3 содержит 25% аудиофайлов, имеющих метку инструмента, и ADS4 содержит вызов восстановления. countEachLabel чтобы проверить, что отношение instrument == "drums" кому instrument == "guitar" сохраняется для новых хранилищ данных в пределах округления.
[ADS3,ADS4] = splitEachLabel(ADS,0.25,'TableVariable','instrument'); ADS3_instrumentCount = countEachLabel(ADS3,'TableVariable','instrument')
ADS3_instrumentCount=3×2 table
instrument Count
__________ _____
Drums 1
Guitar 1
Unknown 7
ADS4_instrumentCount = countEachLabel(ADS4,'TableVariable','instrument')
ADS4_instrumentCount=3×2 table
instrument Count
__________ _____
Drums 3
Guitar 2
Unknown 20
Укажите путь к файлу для образцов звука, включенных в Audio Toolbox™. Создайте хранилище аудиоданных, указывающее на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder);
Создайте таблицу меток с двумя переменными:
containsMusic - Может быть либо true или false.
instrument - Может быть Guitar, Drums, или Unknown.
containsGuitar = contains(ADS.Files,'guitar','IgnoreCase',true); containsDrums = contains(ADS.Files,'drum','IgnoreCase',true); containsMusic = or(containsGuitar,containsDrums); instrument = strings(size(ADS.Files)); instrument(:) = "Unknown"; instrument(containsGuitar) = "Guitar"; instrument(containsDrums) = "Drums";
Назначьте таблицу меток Labels свойство хранилища аудиоданных для связывания строк таблицы меток со строками хранилища данных. Звонить countEachLabel для определения случаев containsMusic и instrument.
labels = table(containsMusic,instrument); ADS.Labels = labels; containsMusicCount = countEachLabel(ADS,'TableVariable','containsMusic')
containsMusicCount=2×2 table
containsMusic Count
_____________ _____
false 27
true 7
instrumentCount = countEachLabel(ADS,'TableVariable','instrument');
Разделение хранилища данных ADS на два, в зависимости от того, содержит ли аудиофайл музыку. ADS1 содержит 5 меток под переменной таблицы containsMusic, и ADS2 содержит вызов восстановления. countEachLabel для проверки.
[ADS1,ADS2] = splitEachLabel(ADS,5,'TableVariable','containsMusic'); ADS1_containsMusicCount = countEachLabel(ADS1,'TableVariable','containsMusic')
ADS1_containsMusicCount=2×2 table
containsMusic Count
_____________ _____
false 5
true 5
ADS2_containsMusicCount = countEachLabel(ADS2,'TableVariable','containsMusic')
ADS2_containsMusicCount=2×2 table
containsMusic Count
_____________ _____
false 22
true 2
Разделение хранилища данных ADS на два, на основе типа инструмента, присутствующего в аудиофайле. ADS3 содержит 2 метки под переменной таблицы instrument, и ADS4 содержит вызов восстановления. countEachLabel для проверки.
[ADS3,ADS4] = splitEachLabel(ADS,2,'TableVariable','instrument'); ADS3_instrumentCount = countEachLabel(ADS3,'TableVariable','instrument')
ADS3_instrumentCount=3×2 table
instrument Count
__________ _____
Drums 2
Guitar 2
Unknown 2
ADS4_instrumentCount = countEachLabel(ADS4,'TableVariable','instrument')
ADS4_instrumentCount=3×2 table
instrument Count
__________ _____
Drums 2
Guitar 1
Unknown 25
ADS - Входное хранилище аудиоданныхaudioDatastore объектВходное хранилище аудиоданных, указанное как audioDatastore объект.
p - Доля разделяемых файловДоля разделяемых файлов, заданная как скаляр в интервале (0,1) или как целочисленный скаляр.
Если p находится в интервале (0,1), он представляет процент файлов от каждой метки для назначения ADS1. Если p представляет процент, и это не приводит к целому числу, то splitEachLabel округляется до ближайшего целого числа.
Если p является целым числом, оно представляет абсолютное количество файлов из каждой метки для назначения ADS1. Когда p представляет количество файлов, должно быть не менее p файлы, связанные с каждой меткой.
Типы данных: double
p1,...,pN - Перечень пропорцийСписок пропорций, указанных как скаляры в интервале (0,1) или целочисленные скаляры.
Если пропорции находятся в интервале (0,1), они представляют процент файлов из каждой метки для назначения хранилищам выходных данных. Когда пропорции представляют проценты, их сумма должна быть не более 1.
Если пропорции являются целыми числами, они указывают абсолютное количество файлов из каждой метки для назначения хранилищам выходных данных. Когда пропорции представляют количество файлов, должно быть достаточно файлов, связанных с каждой меткой, чтобы удовлетворить каждой пропорции.
Типы данных: double
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
[ADS1,ADS2] = splitEachLabel(ADS,0.5,'Exclude','noisy')'Include' - Метки для включенияМетки для включения, указанные как разделенная запятыми пара, состоящая из 'Include' и вектор, массив ячеек или строковый массив имен меток с тем же типом, что и Labels собственность. Каждое имя должно соответствовать одной из меток в Labels свойства хранилища данных.
Этот параметр нельзя использовать с 'Exclude' вариант.
'Exclude' - Метки для исключенияМетки для исключения, указанные как пара, разделенная запятыми, состоящая из 'Exclude' и вектор, массив ячеек или строковый массив имен меток с тем же типом, что и Labels собственность. Каждое имя должно соответствовать одной из меток в Labels свойства хранилища данных.
Этот параметр нельзя использовать с 'Include' вариант.
'TableVariable' - Имя переменной таблицы метокИмя переменной таблицы, указанной как разделенная запятыми пара, состоящая из 'TableVariable' и символьный вектор или строку. Когда Labels свойство хранилища аудиоданных ADS является таблицей, необходимо использовать 'TableVariable' для указания метки, используемой для разделения.
Типы данных: char | string
[ADS1,ADS2] - Выходные хранилища аудиоданныхaudioDatastore объектыВыходные хранилища аудиоданных, возвращенные как audioDatastore объекты. ADS1 содержит указанную долю файлов из каждой метки в ADS, и ADS2 содержит оставшиеся файлы.
[ADS1,...,ADSM] - Список выходных хранилищ аудиоданныхaudioDatastore объектыСписок выходных хранилищ аудиоданных, возвращенных как audioDatastore объекты. Количество элементов в списке больше количества перечисленных пропорций. Каждое из новых хранилищ данных содержит долю каждой метки в ADS определяется p1,…,pN. Все оставшиеся файлы назначаются хранилищу данных Mth.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.