R: можно ли использовать центроиды в формате фрейма данных для классификации

#r #classification #centroid

#r #классификация #центроид

Вопрос:

В научной публикации опубликован классификатор рака поджелудочной железы, и я хочу использовать этот классификатор в своем собственном наборе выражений. Единственная информация, которую они предоставляют, — это фрейм данных с центроидами (строки: гены x столбцы: подтипы) (https://doi.org/10.1053/j.gastro.2018.08.033 , дополнительная таблица 2). До сих пор я не понял, как воспроизвести эту модель классификации для прогнозирования.

Все пакеты, которые я нашел, вычисляют центроиды из данных выражений и меток и выводят модели для прогнозирования нового набора. К сожалению, метки не публикуются вместе с этой статьей; пересчет центроидов невозможен.

Вопрос: Как я могу использовать центроиды для классификации другого набора выражений?

Комментарии:

1. Без данных и некоторого представления о том, какой классификатор вы хотите использовать, нам будет сложно вам помочь.

Ответ №1:

Вы можете использовать k-ближайших соседей только с центроидами. Просто используйте центроиды в качестве обучающих данных, а k = количество центроидов. Поскольку вы не предоставляете никаких данных, я приведу пример с использованием данных iris. Конкретные центроиды здесь не имеют значения, но они должны быть в фрейме данных с тем же форматом, что и данные, которые вы хотите классифицировать. Вы можете называть классы как угодно. Я просто назвал их A, B и C.

 ## Define some centroids
Centroids = aggregate(iris[,1:4], list(iris$Species), mean)[,-1]

library(class)
knn(train=Centroids, test = iris[,1:4], k=3, cl=c("A", "B", "C"))
  [1] B A A B C B C B C A B C C A A B C B C B A B C B C B B B B C B B C B A A A
 [38] A B B B B B A A B B C A A A B C C B A C B C C C B A B B C C A B A B B C C
 [75] A A C C B C C A B C C C B B C A C A C A B A A A B B A C C A C B B B C B A
[112] A B C B A C A B B A B B C B B C A A B A A B A C A B C B B A B C C A B A C
[149] B C
Levels: A B C