Количество уникальных меток
Используйте эту функцию, когда вы работаете над проблемой классификации машин или глубокого обучения и хотите посмотреть пропорции значений меток в наборе данных.
задает дополнительные входные аргументы с использованием пар имя-значение. Например, cnt = countlabels(lblsrc,Name,Value)'TableVariable','Color' считывает метки, соответствующие 'Color'.
Категориальные массивы
Создание категориального массива с категориями A, B, C, и D. Массив содержит образцы каждой категории.
lbls = categorical(["B" "C" "A" "D" "B" "A" "A" "B" "C" "A"], ... ["A" "B" "C" "D"])
lbls = 1x10 categorical
B C A D B A A B C A
Подсчитать количество уникальных значений категорий меток в массиве.
cnt = countlabels(lbls)
cnt=4×3 table
Label Count Percent
_____ _____ _______
A 4 40
B 3 30
C 2 20
D 1 10
Создайте второй категориальный массив с теми же категориями. Массив содержит образцы каждой категории и один образец с отсутствующим значением.
mlbls = categorical(["B" "C" "A" "D" "B" "A" missing "B" "C" "A"], ... ["A" "B" "C" "D"])
mlbls = 1x10 categorical
Columns 1 through 9
B C A D B A <undefined> B C
Column 10
A
Подсчитать количество уникальных значений категорий меток в массиве. Образец с отсутствующим значением включается в подсчет как <undefined>.
mcnt = countlabels(mlbls)
mcnt=5×3 table
Label Count Percent
___________ _____ _______
A 3 30
B 3 30
C 2 20
D 1 10
<undefined> 1 10
Массивы символов
Читайте сонеты Уильяма Шекспира с fileread функция. Удалите все неальфабетические символы из текста и преобразуйте их в строчные.
sonnets = fileread("sonnets.txt"); letters = lower(sonnets(regexp(sonnets,"[A-z]")))';
Подсчитайте, сколько раз каждая буква появляется в сонетах. Перечислите наиболее часто встречающиеся буквы.
cnt = countlabels(letters); cnt = sortrows(cnt,"Count","descend"); head(cnt)
ans=8×3 table
Label Count Percent
_____ _____ _______
e 9028 12.298
t 7210 9.8216
o 5710 7.7782
h 5064 6.8982
s 4994 6.8029
a 4940 6.7293
i 4895 6.668
n 4522 6.1599
Числовые массивы
Используйте poisrand функция для генерации массива из 1000 случайных целых чисел из распределения Пуассона с параметром скорости 3. Постройте гистограмму результатов.
N = 1000; lam = 3; nums = zeros(N,1); for jk = 1:N nums(jk) = poisrand(lam); end histogram(nums)

Подсчитайте частоты целых чисел, представленных в массиве.
mm = countlabels(nums)
mm=10×3 table
Label Count Percent
_____ _____ _______
0 36 3.6
1 153 15.3
10 1 0.1
2 211 21.1
3 213 21.3
4 184 18.4
5 114 11.4
6 58 5.8
7 20 2
8 10 1
function num = poisrand(lam) % Poisson random integer using rejection method p = 0; num = -1; while p <= lam p = p - log(rand); num = num + 1; end end
Создайте таблицу символов с двумя переменными. Первая переменная Type1 содержит экземпляры букв P, Q и R. Вторая переменная Type2 содержит экземпляры букв A, B и D.
tbl = table(["P" "R" "P" "Q" "Q" "Q" "R" "P"]', ... ["A" "B" "B" "A" "D" "D" "A" "A"]',... 'VariableNames',["Type1","Type2"]);
Подсчитайте, сколько раз каждая буква появляется в каждой из переменных таблицы.
cnt = countlabels(tbl,'TableVariable','Type1')
cnt=3×3 table
Type1 Count Percent
_____ _____ _______
P 3 37.5
Q 3 37.5
R 2 25
cnt = countlabels(tbl,'TableVariable','Type2')
cnt=3×3 table
Type2 Count Percent
_____ _____ _______
A 4 50
B 2 25
D 2 25
Создать ArrayDatastore объект, содержащий таблицу.
ads = arrayDatastore(tbl,'OutputType','same');
Подсчитайте, сколько раз каждая буква появляется в каждой из переменных таблицы.
cnt = countlabels(ads,'TableVariable','Type1')
cnt=3×3 table
Type1 Count Percent
_____ _____ _______
P 3 37.5
Q 3 37.5
R 2 25
cnt = countlabels(ads,'TableVariable','Type2')
cnt=3×3 table
Type2 Count Percent
_____ _____ _______
A 4 50
B 2 25
D 2 25
lblsrc - Источник входных метокCombinedDatastore объектИсточник входной метки, указанный как один из следующих:
Категориальный вектор.
Строковый вектор или клеточный массив символьных векторов.
Числовой вектор или клеточный массив числовых скаляров.
Логический вектор или клеточный массив логических скаляров.
Таблица с переменными, содержащая любой из предыдущих типов данных.
Хранилище данных, readall функция возвращает любой из предыдущих типов данных.
A CombinedDatastore объект, содержащий нижележащее хранилище данных, readall функция возвращает любой из предыдущих типов данных. В этом случае необходимо указать индекс базового хранилища данных со значениями метки.
lblsrc должен содержать метки, которые могут быть преобразованы в вектор с дискретным набором категорий.
Пример: lblsrc = categorical(["B" "C" "A" "E" "B" "A" "A" "B" "C" "A"],["A" "B" "C" "D"]) создает источник метки в виде категориального вектора из десяти выборок с четырьмя категориями: A, B, C, и D.
Пример: lblsrc = [0 7 2 5 11 17 15 7 7 11] создает источник метки в виде числового вектора из десяти образцов.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | table | cell | categorical
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
'TableVariable','Sex','UnderlyingDatastoreIndex',5 считывает метки, соответствующие 'Sex' только в пятом базовом хранилище данных объединенного хранилища данных.'TableVariable' - Переменная таблицы для чтенияПеременная таблицы для чтения, заданная как вектор символа или скаляр строки. Если этот аргумент не указан, то countlabels использует первую табличную переменную.
'UnderlyingDatastoreIndex' - Базовый индекс хранилища данныхБазовый индекс хранилища данных, заданный как целочисленный скаляр. Этот аргумент применяется, когда lblsrc является CombinedDatastore объект. countlabels подсчитывает метки в хранилище данных, полученные с помощью UnderlyingDatastores имущество lblsrc.
cnt - Количество уникальных метокКоличество уникальных меток, возвращаемых в виде таблицы со следующими переменными:
Label - Уникальные значения категорий меток. Если 'TableVariable' указывается, то Label имя заменяется именем переменной таблицы.
Count - количество экземпляров каждого значения метки.
Percent - Доля каждого значения метки, выраженная в процентах.
folders2labels | labeledSignalSet | Маркировщик сигналов | signalLabelDefinition | splitlabels
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.