Существует множество методов для решения этой проблемы: -
Базовый статистический подход
Очень простой метод для включения эффекта параметра Age
в данные исделать окончательный возрастной набор данных агностиком следующим:
Выполните центрирование и масштабирование ваших данных на основе Age
Под этим я подразумеваю группировать ваши данные по возрасту, а затем вычесть среднее значение для каждой группы, а затем стандартизировать ваши данные на основе этих групп, используя это среднее значение.
Для стандартизации вы можете использовать два метода:
1) z-score
нормализация: при этом вы можете изменить каждую точку данных на (x-mean(x))/standard-dev(x))
;с помощью среднего и группового стандартного отклонения.
2) mean
нормализация: при этом вы просто вычитаете групповое значение из каждого наблюдения.
3) min-max
нормализация: это модификация нормализации z-счета, в которой вместо standard deviation
вы можете использовать min
или max
группы, т.е. (x-mean(x))/min(x))
или(x-mean(x))/max(x))
.
Для более сложной статистики:
Вы можете получить важность всех функций / столбцов в вашем наборе данных, используя некоторые алгоритмы, такие как PCA (основной компонентанализ) (https://en.wikipedia.org/wiki/Principal_component_analysis),, хотя он обычно используется в качестве алгоритма уменьшения размерности, тем не менее его можно использовать для получения дисперсии во всем наборе данных, а также для получения информации о важности функций.
Ниже приведенопростой пример, объясняющий это:
Я изобразил важность, используя биплот и график, используя набор данных decathlon
из пакета factoextra
:
library("factoextra")
data(decathlon2)
colnames(data)
data<-decathlon2[,1:10] # taking only 10 variables/columns for easyness
res.pca <- prcomp(data, scale = TRUE)
#fviz_eig(res.pca)
fviz_pca_var(res.pca,
col.var = "contrib", # Color by contributions to the PC
gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"),
repel = TRUE # Avoid text overlapping
)
hep.PC.cor = prcomp(data, scale=TRUE)
biplot(hep.PC.cor)
output
[1] "X100m" "Long.jump" "Shot.put" "High.jump" "X400m" "X110m.hurdle"
[7] "Discus" "Pole.vault" "Javeline" "X1500m"
На этих похожих линиях вы можете использовать PCA для ваших данных, чтобы получить важностьпараметр age
в ваших данных.
Надеюсь, это поможет, если я найду большетакими методами я поделюсь.