主要内容

splitEachLabel

根据指定的标签比例拆分数据存储

描述

例子

[ADS1, ADS2]= splitEachLabel (广告p分割音频文件广告到两个新的数据存储中,ADS1而且ADS2.新的数据存储ADS1包含第一个p来自每个标签的文件,和ADS2包含每个标签的剩余文件。p可以是0到1之间的数字,表示每个标签分配给的文件的百分比ADS1,或表示每个标签中要分配给的文件的绝对数量的整数ADS1

例子

[ADS1…,ADSM]= splitEachLabel (广告p1,…,pN将数据存储拆分为N + 1新的数据存储。新的数据存储ADS1包含第一个p1来自每个标签的文件,下一个新的数据存储ADS2包含下一个p2文件,等等。如果p1,…,pN表示文件数,则它们的和必须不大于原始数据存储中最小标签中的文件数,广告

例子

___= splitEachLabel (___“随机”)将每个标签中指定比例的文件随机分配到新的数据存储中。

例子

___= splitEachLabel (___名称,值使用一个或多个名称-值对参数指定新数据存储的属性。例如,您可以指定要使用哪些标签进行分割“包括”、“labelname”

例子

全部折叠

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹,“FileExtensions”“wav”);

添加标签一个到文件的前半部分,还有标签B敬下半场。如果文件数量为奇数,则为额外的文件分配标签B.调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B

标签= [repmat({“一个”} 1楼(元素个数(ADS.Files) / 2)),...repmat ({“B”} 1装天花板(元素个数(ADS.Files) / 2)));ADS.Labels =标签;countEachLabel(广告)
ans =2×2表标签计数_____ _____ A 10 B 10

将ADS拆分为两个数据存储,ADS1而且ADS2,指定每个新的数据存储包含每个标签和相应文件的50%。调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B为每个新的数据存储。

[ADS1,ADS2] = splitEachLabel(ADS,0.5)
ADS1 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和7更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS2 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ engine -16-44p1-stereo-20s .wav';’……/构建/ matlab工具箱/音频/样本/ FemaleSpeech-16-8-mono-3secs.wav ';/bat/Bdoc22a/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav…{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和7更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS1count =计数标签(ADS1)
ADS1count =2×2表标签计数_____ _____ A 5 B 5 .单击“确定”
ADS2 = countEachLabel(ADS2)
ADS2count =2×2表标签计数_____ _____ A 5 B 5 .单击“确定”

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹,“FileExtensions”“wav”);

添加标签一个到文件的前半部分,还有标签B敬下半场。如果文件数量为奇数,则为额外的文件分配标签B.调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B

标签= [repmat({“一个”} 1楼(元素个数(ADS.Files) / 2)),...repmat ({“B”} 1装天花板(元素个数(ADS.Files) / 2)));ADS.Labels =标签;countEachLabel(广告)
ans =2×2表标签计数_____ _____ A 10 B 10

将ADS拆分为两个数据存储,ADS1而且ADS2.指定ADS1每个标签包含四个及其对应的文件。ADS2包含其余标签和相应的文件。调用countEachLabel为了证实这一点ADS1包含四个标记为一个还有四个文件B,以及ADS2包含其余标签。

[ADS1,ADS2] = splitEachLabel(ADS,4)
ADS1 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和5更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS2 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ counting -16-44p1-mono- 15seconds .wav';’……/构建/ matlab工具箱/音频/样本/ Engine-16-44p1-stereo-20sec.wav ';/build/matlab/toolbox/audio/samples/ femalspeech -16-8-mono-3sec .wav…{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和9更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS1count =计数标签(ADS1)
ADS1count =2×2表标签数量_____ _____ A 4 B 4 .标签数量
ADS2 = countEachLabel(ADS2)
ADS2count =2×2表标签计数_____ _____ A 6 B 6 .标签计数

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹,“FileExtensions”“wav”);

添加标签一个到文件的前半部分,还有标签B敬下半场。如果文件数量为奇数,则为额外的文件分配标签B.调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B

标签= [repmat({“一个”} 1楼(元素个数(ADS.Files) / 2)),...repmat ({“B”} 1装天花板(元素个数(ADS.Files) / 2)));ADS.Labels =标签;countEachLabel(广告)
ans =2×2表标签计数_____ _____ A 10 B 10

分裂广告三个新的数据存储,ADS60ADS10,ADS30.第一个数据存储,ADS60属性的文件的前60%一个标签和前60%的文件B标签。ADS10包含每个标签下10%的文件。ADS30包含每个标签中剩下的30%的文件。如果应用于标签的百分比没有产生完整的文件数,则splitEachLabel四舍五入到最接近的整数。

[ADS60,ADS10,ADS30] = splitEachLabel(ADS,0.6,0.1)
ADS60 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16- 44f1 -mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和9更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS10 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ femalspeech -16-8-mono-3sec .wav';"…/matlab/toolbox/audio/samples/ trainwhistle -16-44p1-mon - 9秒.wav "}文件夹:{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';'B'} AlternateFileSystemRoots: {} OutputDataType: 'double' 万博1manbetxSupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS30 = audioDatastore属性:Files:{'…/bat/Bdoc22a/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav';’……/ matlab工具箱/音频/样本/ JetAirplane-16-11p025-mono-16secs.wav”;/build/matlab/toolbox/audio/samples/笑笑-16-8-mono- 4seconds .wav{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和3更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

调用countEachLabel确认每个数据存储的标签的正确分布。

countEachLabel (ADS60)
ans =2×2表标签计数_____ _____ A 6 B 6 .标签计数
countEachLabel (ADS10)
ans =2×2表标签数量_____ _____ A 1 B 1
countEachLabel (ADS30)
ans =2×2表标签数量_____ _____ A 3 B 3 .标签数量

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹,“FileExtensions”“wav”);

添加标签一个到文件的前半部分,还有标签B敬下半场。如果文件数量为奇数,则为额外的文件分配标签B.调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B

标签= [repmat({“一个”} 1楼(元素个数(ADS.Files) / 2)),...repmat ({“B”} 1装天花板(元素个数(ADS.Files) / 2)));ADS.Labels =标签;countEachLabel(广告)
ans =2×2表标签计数_____ _____ A 10 B 10

分裂广告三个新的数据存储,ADS1ADS2,ADS3.第一个数据存储,ADS1的第一个文件一个标记和第一个文件B标签。ADS2包含每个标签的下一个文件。ADS3包含每个标签的剩余文件。如果应用于标签的百分比没有产生完整的文件数,则splitEachLabel四舍五入到最接近的整数。

[ADS1,ADS2,ADS3] = splitEachLabel(ADS,1,1)
ADS1 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';"…/matlab/toolbox/audio/samples/ mainstreetone -16-16-mono- 12seconds .wav "}文件夹:{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';'B'} AlternateFileSystemRoots: {} OutputDataType: 'double' 万博1manbetxSupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS2 = audioDatastore属性:Files:{'…/matlab/toolbox/audio/samples/ audioarray -16-16-4channels- 20seconds .wav';“…/build/matlab/toolbox/audio/samples/ noisyspeech -16-22p5-mono- 5秒.wav”}文件夹:{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';'B'} AlternateFileSystemRoots: {} OutputDataType: 'double' 万博1manbetxSupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS3 = audioDatastore属性:Files:{'…/toolbox/audio/samples/ churchimpulserespones -16-44p1-mono- 5seconds .wav';’……/构建/ matlab工具箱/音频/样本/点击- 16 - 44 - p1 - mono - 0.2 - secs.wav”;/build/matlab/toolbox/audio/samples/ counting -16-44p1-mono-15sec .wav…{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和13个更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Suppor万博1manbetxtedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

调用countEachLabel确认每个数据存储的标签的正确分布。

countEachLabel (ADS1)
ans =2×2表标签数量_____ _____ A 1 B 1
countEachLabel (ADS2)
ans =2×2表标签数量_____ _____ A 1 B 1
countEachLabel (ADS3)
ans =2×2表标签计数_____ _____ A 8 B 8

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹,“FileExtensions”“wav”
ADS = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{'/mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'} AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: [万博1manbetx"wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

添加标签一个到文件的前半部分,还有标签B敬下半场。如果文件数量为奇数,则为额外的文件分配标签B.调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B

标签= [repmat({“一个”} 1楼(元素个数(ADS.Files) / 2)),...repmat ({“B”} 1装天花板(元素个数(ADS.Files) / 2)));ADS.Labels =标签;countEachLabel(广告)
ans =2×2表标签计数_____ _____ A 10 B 10

中的文件创建两个新的数据存储广告从每个标签中随机抽取。第一个数据存储,ADS1,包含两个随机文件一个标签和两个随机文件B标签。ADS2包含每个标签的剩余文件。

[ADS1,ADS2] = splitEachLabel(ADS,2,“随机”
ADS1 = audioDatastore属性:Files:{'…/toolbox/audio/samples/ churchimpulserespones -16-44p1-mono- 5seconds .wav';’……/构建/ matlab工具箱/音频/样本/ Engine-16-44p1-stereo-20sec.wav ';/matlab/toolbox/audio/samples/ mainstreetone -16-16-mono-12sec .wav…{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“B”……和1更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
ADS2 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/build/matlab/toolbox/audio/samples/ click -16-44p1-mono-0.2 seconds .wav…{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和13个更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Suppor万博1manbetxtedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹,“FileExtensions”“wav”
ADS = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{'/mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'} AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: [万博1manbetx"wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

添加标签一个到文件的前半部分,还有标签B敬下半场。如果文件数量为奇数,则为额外的文件分配标签B.调用countEachLabel来确认一半的文件被标记一个一半的文件都有标签B

标签= [repmat({“一个”} 1楼(元素个数(ADS.Files) / 2)),...repmat ({“B”} 1装天花板(元素个数(ADS.Files) / 2)));ADS.Labels =标签;countEachLabel(广告)
ans = 2x2 table标签计数_____ _____ A 10 B 10

中的文件创建两个新的数据存储广告,只包括带有一个标签。ADS1属性的文件的前70%一个标签,ADS2的剩余30%的标签一个标签。

[ADS1,ADS2] = splitEachLabel(ADS,0.7,“包括”“一个”
ADS1 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和4更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav" ADS2 = audioDatastore与属性:Files:{'…/bat/Bdoc22a/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav';’……/ matlab工具箱/音频/样本/ JetAirplane-16-11p025-mono-16secs.wav”;“…/build/matlab/toolbox/audio/samples/ laugh -16-8-mon - 4seconds .wav”}文件夹:{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”; 'A'} AlternateFileSystemRoots: {} OutputDataType: 'double' SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

同样,您只能分割一个通过排除B标签。

[ADS1,ADS2] = splitEachLabel(ADS,0.7,“排除”“B”
ADS1 = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”;“一个”……和4更多}AlternateFileSystemRoots: {} OutputDataType: 'double' Support万博1manbetxedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav" ADS2 = audioDatastore与属性:Files:{'…/bat/Bdoc22a/build/matlab/toolbox/audio/samples/Heli_16ch_ACN_SN3D.wav';’……/ matlab工具箱/音频/样本/ JetAirplane-16-11p025-mono-16secs.wav”;“…/build/matlab/toolbox/audio/samples/ laugh -16-8-mon - 4seconds .wav”}文件夹:{' /mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'}标签:{'A';“一个”; 'A'} AlternateFileSystemRoots: {} OutputDataType: 'double' SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹)
ADS = audioDatastore属性:Files:{'…/build/matlab/toolbox/audio/samples/ ambient -16-44p1-mono- 12seconds .wav';’……/ matlab工具箱/音频/样本/ AudioArray-16-16-4channels-20secs.wav”;/toolbox/audio/samples/ churchimpulseresponse -16-44p1-mono- 5seconds .wav{'/mathworks/devel/bat/Bdoc22a/build/matlab/toolbox/audio/samples'} AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: [万博1manbetx"wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"

创建一个包含两个变量的标签表:

  • containsMusic——两者都有可能真正的

  • 仪器——可以吉他,或未知的

containsGuitar = contains(ADS.)文件,“吉他”“IgnoreCase”,真正的);containsDrums = contains(ADS.)文件,“鼓”“IgnoreCase”,真正的);containsmmusic = or(containsGuitar,containsDrums);仪器=字符串(大小(ADS.Files));仪器:=“未知”;仪器(containsGuitar) =“吉他”;仪器(containsDrums) =“鼓”

将标签表分配给标签属性将标签表的行与数据存储的行相关联。调用countEachLabel确定…的发生率containsMusic而且仪器

labels = table(containsMusic,instrument);ADS.Labels =标签;containsMusicCount = countEachLabel(ADS,“TableVariable”“containsMusic”
containsMusicCount =2×2表containsMusic计数  _____________ _____ 假27真7
instrumentCount = countEachLabel(ADS,“TableVariable”“工具”
instrumentCount =3×2表乐器计数__________ _____鼓4吉他3未知27

拆分数据存储广告根据音频文件是否包含音乐分为两个。ADS1包含70%的包含音乐的音频文件,和ADS2包含其余部分。调用countEachLabel来验证的比值containsmmusic == truecontainsMusic == false在舍入范围内为新数据存储保存。

[ADS1,ADS2] = splitEachLabel(ADS,0.7,“TableVariable”“containsMusic”);ADS1_containsMusicCount = countEachLabel(ADS1,“TableVariable”“containsMusic”
ADS1_containsMusicCount =2×2表containsMusic计数  _____________ _____ 假19真5
ADS2_containsMusicCount = countEachLabel(ADS2,“TableVariable”“containsMusic”
ADS2_containsMusicCount =2×2表containsMusic计数  _____________ _____ 假8真2

拆分数据存储广告根据音频文件中出现的乐器类型分为两种。ADS3包含25%有乐器标签的音频文件,并且ADS4包含其余部分。调用countEachLabel来验证的比值乐器== "鼓"乐器== "吉他"在舍入范围内为新数据存储保存。

[ADS3,ADS4] = splitEachLabel(ADS,0.25,“TableVariable”“工具”);ads3_instrumentation count = countEachLabel(ADS3,“TableVariable”“工具”
ADS3_instrumentCount =3×2表乐器数__________ _____鼓1吉他1未知7
ADS4_instrumentCount = countEachLabel(ADS4,“TableVariable”“工具”
ADS4_instrumentCount =3×2表乐器数__________ _____鼓3吉他2未知20

指定音频工具箱™中包含的音频样本的文件路径。创建指向指定文件夹的音频数据存储。

文件夹= fullfile(matlabroot,“工具箱”“音频”“样本”);ADS = audioDatastore(文件夹);

创建一个包含两个变量的标签表:

  • containsMusic-可以是任何一个真正的

  • 仪器-可以吉他,或未知的

containsGuitar = contains(ADS.)文件,“吉他”“IgnoreCase”,真正的);containsDrums = contains(ADS.)文件,“鼓”“IgnoreCase”,真正的);containsmmusic = or(containsGuitar,containsDrums);仪器=字符串(大小(ADS.Files));仪器:=“未知”;仪器(containsGuitar) =“吉他”;仪器(containsDrums) =“鼓”

将标签表分配给标签属性将标签表的行与数据存储的行相关联。调用countEachLabel确定…的发生率containsMusic而且仪器

labels = table(containsMusic,instrument);ADS.Labels =标签;containsMusicCount = countEachLabel(ADS,“TableVariable”“containsMusic”
containsMusicCount =2×2表containsMusic计数  _____________ _____ 假27真7
instrumentCount = countEachLabel(ADS,“TableVariable”“工具”);

拆分数据存储广告根据音频文件是否包含音乐分为两个。ADS1包含表变量下每个标签的5个containsMusic,ADS2包含其余部分。调用countEachLabel来验证。

[ADS1,ADS2] = splitEachLabel(ADS,5,“TableVariable”“containsMusic”);ADS1_containsMusicCount = countEachLabel(ADS1,“TableVariable”“containsMusic”
ADS1_containsMusicCount =2×2表containsMusic计数  _____________ _____ 错误的5对5
ADS2_containsMusicCount = countEachLabel(ADS2,“TableVariable”“containsMusic”
ADS2_containsMusicCount =2×2表containsMusic计数  _____________ _____ 假22真2

拆分数据存储广告根据音频文件中出现的乐器类型分为两种。ADS3包含表变量下每个标签的2个仪器,ADS4包含其余部分。调用countEachLabel来验证。

[ADS3,ADS4] = splitEachLabel(ADS,2,“TableVariable”“工具”);ads3_instrumentation count = countEachLabel(ADS3,“TableVariable”“工具”
ADS3_instrumentCount =3×2表乐器计数__________ _____鼓2吉他2未知2
ADS4_instrumentCount = countEachLabel(ADS4,“TableVariable”“工具”
ADS4_instrumentCount =3×2表乐器计数__________ _____鼓2吉他1未知25

输入参数

全部折叠

输入音频数据存储,指定为audioDatastore对象。

要分割的文件比例,指定为间隔(0,1)中的标量或正整数标量。

如果p是在区间(0,1),它表示从每个标签分配到的文件的百分比ADS1.如果p表示百分比,因此它不会产生整数splitEachLabel四舍五入到最接近的整数。

如果p是一个整数,它表示每个标签要分配给的文件的绝对数量ADS1.当p表示多个文件,必须至少有一个p与每个标签相关联的文件。

数据类型:

比例列表,指定为区间(0,1)中的标量或正整数标量。

如果比例在区间(0,1)内,则表示分配给输出数据存储的每个标签的文件的百分比。当比例表示百分比时,它们的和不得大于1。

如果比例是整数,则表示每个标签分配给输出数据存储的文件的绝对数量。当比例表示文件数量时,必须有足够的文件与每个标签相关联,以满足每个比例。

数据类型:

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:[ADS1,ADS2] = splitEachLabel(ADS,0.5,'Exclude',' noise ')

要包含的标签,指定为逗号分隔的对,由“包括”类型的标签名称的向量、单元格数组或字符串数组标签财产。名称中的一个标签必须匹配标签属性。

选项不能与“排除”选择。

要排除的标签,指定为逗号分隔的对,由“排除”类型的标签名称的向量、单元格数组或字符串数组标签财产。名称中的一个标签必须匹配标签属性。

选项不能与“包括”选择。

表变量名,指定为由逗号分隔的对组成“TableVariable”和字符向量或字符串。当标签音频数据存储的属性广告是一张桌子,你一定要用吗“TableVariable”指定要分割的标签。

数据类型:字符|字符串

输出参数

全部折叠

输出音频数据存储,返回为audioDatastore对象。ADS1包含每个标签中指定比例的文件广告,ADS2包含其余文件。

输出音频数据存储的列表,返回为audioDatastore对象。列表中元素的数量比所列比例的数量多一个。每个新的数据存储都包含每个标签的比例广告定义为p1,…,pN.剩余的任何文件都分配给数据存储。

版本历史

在R2018b中引入