Remove .Rhistory & .RData

This commit is contained in:
2024-03-07 15:44:04 +01:00
parent a42e03dae7
commit 7a7df0b11b
4 changed files with 0 additions and 667 deletions

View File

@@ -1,512 +0,0 @@
contribs <- res.notes$ind$contrib
contrib_moy_ind <- mean(contribs) # 100 * 1/42
contrib_therese <- res.notes$ind$contrib["Thérèse",3]
contrib_moy_ind
contrib_therese
quali_julien <- res.notes$ind$cos2["Julien", 1:2]
quali_julien
sum(quali_julien * 100)
contrib_moy_ind <- mean(res.notes$ind$contrib)
contrib_moy_ind
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,1], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,2:2], decreasing = TRUE)
indiv_contrib_axe_1[1:3]
mal_representes <- rownames(res.notes$ind$contrib)[rowSums(res.notes$ind$contrib[,1:2]) <= contrib_moy_ind]
cat("Les individus mal représentés sont : ", mal_representes)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
summary(res.notes_sup, nb.dec = 2, nbelements = Inf, nbind = Inf)
contrib_moy_var <- mean(res.notes_sup$var$contrib) # 100 * 1/14
contrib_moy_var
var_contrib_axe_2 <- sort(res.notes_sup$var$contrib[,2:2], decreasing = TRUE)
head(var_contrib_axe_2, 3)
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
indiv_contrib_axe_1[1:3]
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
notes_MAN_prep <- notes_MAN[,-1]
X <- notes_MAN[1:6,]%>%select(c("Probas","Analyse","Anglais","MAN.Stats","Stats.Inférentielles"))
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
# View(X)
X <- scale(X,center=TRUE,scale=TRUE)
X
cor_X <- cor(X)
eigen_X <- eigen(cor_X, symmetric = TRUE)
lambda <- eigen_X["values"]$values
vect <- eigen_X["vectors"]$vectors
lambda
inertie_total_1 <- sum(diag(cor_X)) # Inertie est égale à la trace de la matrice de corrélation
inertie_total_1
inertie_total_2 <- sum(lambda) # Inertie est aussi égale à la somme des valeurs propres
inertie_total_2
inertie_axes <- (lambda[1] + lambda[2]) / inertie_total_1 # Inertie expliquée par les deux premières composantes principales
inertie_axes
C <- X %*% vect
C[,1:2]
plot(
C[,1],C[,2],
main="Coordonnées des individus par rapport \n aux deux premières composantes principales",
xlab = "Première composante principale",
ylab = "Deuxieme composante principale",
panel.first = grid(),
col = c('blue', 'red', 'green', 'yellow', 'purple', 'orange'),
pch=15
)
legend(x = 'topleft', legend = rownames(X), col = c('blue', 'red', 'green', 'yellow', 'purple', 'orange'), pch = 15)
nrow(notes_MAN_prep) # Nombre d'individus
ncol(notes_MAN_prep) # Nombre de variables
dim(notes_MAN_prep) # On peut également utiliser 'dim' qui renvoit la dimension
library(FactoMineR)
# help(PCA)
# Ne pas oublier de charger la librairie FactoMineR
# Indication : pour afficher les résultats de l'ACP pour tous les individus, utiliser la
# fonction summary en précisant dedans nbind=Inf et nbelements=Inf
res.notes <- PCA(notes_MAN_prep, scale.unit = TRUE)
summary(res.notes, nbind = Inf, nbelements = Inf, nb.dec = 2)
eigen_values <- res.notes$eig
bplot <- barplot(
eigen_values[, 1],
names.arg = 1:nrow(eigen_values),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Eigenvalues",
col = "lightblue"
)
lines(x = bplot, eigen_values[, 1], type = "b", col = "red")
abline(h=1, col = "darkgray", lty = 5)
coords_man_stats <- res.notes$var$coord["MAN.Stats",]
coords_man_stats[1:2]
contribs <- res.notes$ind$contrib
contrib_moy_ind <- mean(contribs) # 100 * 1/42
contrib_therese <- res.notes$ind$contrib["Thérèse",3]
contrib_moy_ind
contrib_therese
quali_julien <- res.notes$ind$cos2["Julien", 1:2]
quali_julien
sum(quali_julien * 100)
contrib_moy_ind <- mean(res.notes$ind$contrib)
contrib_moy_ind
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,1], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 3)
mal_representes <- rownames(res.notes$ind$contrib)[rowSums(res.notes$ind$contrib[,1:2]) <= contrib_moy_ind]
cat("Les individus mal représentés sont : ", mal_representes)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
summary(res.notes_sup, nb.dec = 2, nbelements = Inf, nbind = Inf)
contrib_moy_var <- mean(res.notes_sup$var$contrib) # 100 * 1/14
contrib_moy_var
var_contrib_axe_2 <- sort(res.notes_sup$var$contrib[,2:2], decreasing = TRUE)
head(var_contrib_axe_2, 3)
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 4)
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 3)
View(X)
colors <- c('blue', 'red', 'green', 'yellow', 'purple', 'orange')
plot(
C[,1],C[,2],
main="Coordonnées des individus par rapport \n aux deux premières composantes principales",
xlab = "Première composante principale",
ylab = "Deuxieme composante principale",
panel.first = grid(),
col = colors,
pch=15
)
legend(x = 'topleft', legend = rownames(X), col = colors, pch = 15)
View(X)
View(notes_MAN)
View(res.notes)
mal_representes <- rownames(res.notes$ind$contrib)[rowSums(res.notes$ind$contrib[,1:2]) <= 4.334]
cat("Les individus mal représentés sont : ", mal_representes)
mal_representes <- rownames(res.notes$ind$contrib)[rowSums(res.notes$ind$contrib[,1:2]) <= contrib_moy_ind]
cat("Les individus mal représentés sont : ", mal_representes)
mal_representes <- rownames(res.notes$ind$cos2)[rowSums(res.notes$ind$cos2[,1:2]) <= mean(res.notes$ind$cos2[,1:2])]
cat("Les individus mal représentés sont : ", mal_representes)
View(notes_MAN_prep)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot(res.notes_sup, habillage = "Mentions")
knitr::opts_chunk$set(include = FALSE)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
notes_MAN_prep <- notes_MAN[,-1]
X <- notes_MAN[1:6,]%>%select(c("Probas","Analyse","Anglais","MAN.Stats","Stats.Inférentielles"))
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
# View(X)
X <- scale(X,center=TRUE,scale=TRUE)
X
cor_X <- cor(X)
eigen_X <- eigen(cor_X, symmetric = TRUE)
lambda <- eigen_X["values"]$values
vect <- eigen_X["vectors"]$vectors
lambda
inertie_total_1 <- sum(diag(cor_X)) # Inertie est égale à la trace de la matrice de corrélation
inertie_total_1
inertie_total_2 <- sum(lambda) # Inertie est aussi égale à la somme des valeurs propres
inertie_total_2
inertie_axes <- (lambda[1] + lambda[2]) / inertie_total_1 # Inertie expliquée par les deux premières composantes principales
inertie_axes
C <- X %*% vect
C[,1:2]
colors <- c('blue', 'red', 'green', 'yellow', 'purple', 'orange')
plot(
C[,1],C[,2],
main="Coordonnées des individus par rapport \n aux deux premières composantes principales",
xlab = "Première composante principale",
ylab = "Deuxieme composante principale",
panel.first = grid(),
col = colors,
pch=15
)
legend(x = 'topleft', legend = rownames(X), col = colors, pch = 15)
nrow(notes_MAN_prep) # Nombre d'individus
ncol(notes_MAN_prep) # Nombre de variables
dim(notes_MAN_prep) # On peut également utiliser 'dim' qui renvoit la dimension
library(FactoMineR)
# help(PCA)
# Ne pas oublier de charger la librairie FactoMineR
# Indication : pour afficher les résultats de l'ACP pour tous les individus, utiliser la
# fonction summary en précisant dedans nbind=Inf et nbelements=Inf
res.notes <- PCA(notes_MAN_prep, scale.unit = TRUE)
summary(res.notes, nbind = Inf, nbelements = Inf, nb.dec = 2)
eigen_values <- res.notes$eig
bplot <- barplot(
eigen_values[, 1],
names.arg = 1:nrow(eigen_values),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Eigenvalues",
col = "lightblue"
)
lines(x = bplot, eigen_values[, 1], type = "b", col = "red")
abline(h=1, col = "darkgray", lty = 5)
coords_man_stats <- res.notes$var$coord["MAN.Stats",]
coords_man_stats[1:2]
contribs <- res.notes$ind$contrib
contrib_moy_ind <- mean(contribs) # 100 * 1/42
contrib_therese <- res.notes$ind$contrib["Thérèse",3]
contrib_moy_ind
contrib_therese
quali_julien <- res.notes$ind$cos2["Julien", 1:2]
quali_julien
sum(quali_julien * 100)
contrib_moy_ind <- mean(res.notes$ind$contrib)
contrib_moy_ind
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,1], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 3)
mal_representes <- rownames(res.notes$ind$cos2)[rowSums(res.notes$ind$cos2[,1:2]) <= mean(res.notes$ind$cos2[,1:2])]
cat("Les individus mal représentés sont : ", mal_representes)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.iris, choix = "ind", habillage = "Mentions", label = "none")
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.notes_sup, choix = "ind", habillage = "Mentions", label = "none")
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.notes_sup, choix = "ind", habillage = "Mentions")
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.notes_sup, choix = "ind", habillage = "Mention")
View(notes_MAN)
View(notes_MAN)
knitr::opts_chunk$set(include = FALSE)
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
mal_representes_moy <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= mean(res.notes_sup$var$cos2[,1:2])
mal_representes_moy
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
notes_MAN_prep <- notes_MAN[,-1]
X <- notes_MAN[1:6,]%>%select(c("Probas","Analyse","Anglais","MAN.Stats","Stats.Inférentielles"))
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
# View(X)
X <- scale(X,center=TRUE,scale=TRUE)
X
cor_X <- cor(X)
eigen_X <- eigen(cor_X, symmetric = TRUE)
lambda <- eigen_X["values"]$values
vect <- eigen_X["vectors"]$vectors
lambda
inertie_total_1 <- sum(diag(cor_X)) # Inertie est égale à la trace de la matrice de corrélation
inertie_total_1
inertie_total_2 <- sum(lambda) # Inertie est aussi égale à la somme des valeurs propres
inertie_total_2
inertie_axes <- (lambda[1] + lambda[2]) / inertie_total_1 # Inertie expliquée par les deux premières composantes principales
inertie_axes
C <- X %*% vect
C[,1:2]
colors <- c('blue', 'red', 'green', 'yellow', 'purple', 'orange')
plot(
C[,1],C[,2],
main="Coordonnées des individus par rapport \n aux deux premières composantes principales",
xlab = "Première composante principale",
ylab = "Deuxieme composante principale",
panel.first = grid(),
col = colors,
pch=15
)
legend(x = 'topleft', legend = rownames(X), col = colors, pch = 15)
nrow(notes_MAN_prep) # Nombre d'individus
ncol(notes_MAN_prep) # Nombre de variables
dim(notes_MAN_prep) # On peut également utiliser 'dim' qui renvoit la dimension
library(FactoMineR)
# help(PCA)
# Ne pas oublier de charger la librairie FactoMineR
# Indication : pour afficher les résultats de l'ACP pour tous les individus, utiliser la
# fonction summary en précisant dedans nbind=Inf et nbelements=Inf
res.notes <- PCA(notes_MAN_prep, scale.unit = TRUE)
summary(res.notes, nbind = Inf, nbelements = Inf, nb.dec = 2)
eigen_values <- res.notes$eig
bplot <- barplot(
eigen_values[, 1],
names.arg = 1:nrow(eigen_values),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Eigenvalues",
col = "lightblue"
)
lines(x = bplot, eigen_values[, 1], type = "b", col = "red")
abline(h=1, col = "darkgray", lty = 5)
coords_man_stats <- res.notes$var$coord["MAN.Stats",]
coords_man_stats[1:2]
contribs <- res.notes$ind$contrib
contrib_moy_ind <- mean(contribs) # 100 * 1/42
contrib_therese <- res.notes$ind$contrib["Thérèse",3]
contrib_moy_ind
contrib_therese
quali_julien <- res.notes$ind$cos2["Julien", 1:2]
quali_julien
sum(quali_julien * 100)
contrib_moy_ind <- mean(res.notes$ind$contrib)
contrib_moy_ind
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,1], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 3)
mal_representes <- rownames(res.notes$ind$cos2)[rowSums(res.notes$ind$cos2[,1:2]) <= mean(res.notes$ind$cos2[,1:2])]
cat("Les individus mal représentés sont : ", mal_representes)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.notes_sup, choix = "ind", habillage = "Mention")
summary(res.notes_sup, nb.dec = 2, nbelements = Inf, nbind = Inf)
contrib_moy_var <- mean(res.notes_sup$var$contrib) # 100 * 1/14
contrib_moy_var
var_contrib_axe_2 <- sort(res.notes_sup$var$contrib[,2], decreasing = TRUE)
head(var_contrib_axe_2, 3)
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
mal_representes_moy <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= mean(res.notes_sup$var$cos2[,1:2])
mal_representes_moy
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
mal_representes_moy <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= mean(res.notes_sup$var$cos2[,1:2])]
mal_representes_moy
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
notes_MAN_prep <- notes_MAN[,-1]
X <- notes_MAN[1:6,]%>%select(c("Probas","Analyse","Anglais","MAN.Stats","Stats.Inférentielles"))
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
# View(X)
X <- scale(X,center=TRUE,scale=TRUE)
X
cor_X <- cor(X)
eigen_X <- eigen(cor_X, symmetric = TRUE)
lambda <- eigen_X["values"]$values
vect <- eigen_X["vectors"]$vectors
lambda
inertie_total_1 <- sum(diag(cor_X)) # Inertie est égale à la trace de la matrice de corrélation
inertie_total_1
inertie_total_2 <- sum(lambda) # Inertie est aussi égale à la somme des valeurs propres
inertie_total_2
inertie_axes <- (lambda[1] + lambda[2]) / inertie_total_1 # Inertie expliquée par les deux premières composantes principales
inertie_axes
C <- X %*% vect
C[,1:2]
colors <- c('blue', 'red', 'green', 'yellow', 'purple', 'orange')
plot(
C[,1],C[,2],
main="Coordonnées des individus par rapport \n aux deux premières composantes principales",
xlab = "Première composante principale",
ylab = "Deuxieme composante principale",
panel.first = grid(),
col = colors,
pch=15
)
legend(x = 'topleft', legend = rownames(X), col = colors, pch = 15)
nrow(notes_MAN_prep) # Nombre d'individus
ncol(notes_MAN_prep) # Nombre de variables
dim(notes_MAN_prep) # On peut également utiliser 'dim' qui renvoit la dimension
library(FactoMineR)
# help(PCA)
# Ne pas oublier de charger la librairie FactoMineR
# Indication : pour afficher les résultats de l'ACP pour tous les individus, utiliser la
# fonction summary en précisant dedans nbind=Inf et nbelements=Inf
res.notes <- PCA(notes_MAN_prep, scale.unit = TRUE)
summary(res.notes, nbind = Inf, nbelements = Inf, nb.dec = 2)
eigen_values <- res.notes$eig
bplot <- barplot(
eigen_values[, 1],
names.arg = 1:nrow(eigen_values),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Eigenvalues",
col = "lightblue"
)
lines(x = bplot, eigen_values[, 1], type = "b", col = "red")
abline(h=1, col = "darkgray", lty = 5)
coords_man_stats <- res.notes$var$coord["MAN.Stats",]
coords_man_stats[1:2]
contribs <- res.notes$ind$contrib
contrib_moy_ind <- mean(contribs) # 100 * 1/42
contrib_therese <- res.notes$ind$contrib["Thérèse",3]
contrib_moy_ind
contrib_therese
quali_julien <- res.notes$ind$cos2["Julien", 1:2]
quali_julien
sum(quali_julien * 100)
contrib_moy_ind <- mean(res.notes$ind$contrib)
contrib_moy_ind
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,1], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 3)
mal_representes <- rownames(res.notes$ind$cos2)[rowSums(res.notes$ind$cos2[,1:2]) <= mean(res.notes$ind$cos2[,1:2])]
cat("Les individus mal représentés sont : ", mal_representes)
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.notes_sup, choix = "ind", habillage = "Mention")
summary(res.notes_sup, nb.dec = 2, nbelements = Inf, nbind = Inf)
contrib_moy_var <- mean(res.notes_sup$var$contrib) # 100 * 1/14
contrib_moy_var
var_contrib_axe_2 <- sort(res.notes_sup$var$contrib[,2], decreasing = TRUE)
head(var_contrib_axe_2, 3)
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
mal_representes_moy <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= mean(res.notes_sup$var$cos2[,1:2])]
mal_representes_moy
mal_representes <- rownames(res.notes$ind$cos2)[rowSums(res.notes$ind$cos2[,1:2]) <= mean(res.notes$ind$cos2[,1:2])]
mal_representes
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
knitr::opts_chunk$set(include = FALSE)
rm(list=ls())
library(dplyr)
notes_MAN <- read.table("notes_MAN.csv", sep=";", dec=",", row.names=1, header=TRUE)
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
notes_MAN_prep <- notes_MAN[,-1]
X <- notes_MAN[1:6,]%>%select(c("Probas","Analyse","Anglais","MAN.Stats","Stats.Inférentielles"))
# on prépare le jeu de données en retirant la colonne des Mentions
# qui est une variable catégorielle
# View(X)
X <- scale(X,center=TRUE,scale=TRUE)
X
cor_X <- cor(X)
eigen_X <- eigen(cor_X, symmetric = TRUE)
lambda <- eigen_X["values"]$values
vect <- eigen_X["vectors"]$vectors
lambda
inertie_total_1 <- sum(diag(cor_X)) # Inertie est égale à la trace de la matrice de corrélation
inertie_total_1
inertie_total_2 <- sum(lambda) # Inertie est aussi égale à la somme des valeurs propres
inertie_total_2
inertie_axes <- (lambda[1] + lambda[2]) / inertie_total_1 # Inertie expliquée par les deux premières composantes principales
inertie_axes
C <- X %*% vect
C[,1:2]
colors <- c('blue', 'red', 'green', 'yellow', 'purple', 'orange')
plot(
C[,1],C[,2],
main="Coordonnées des individus par rapport \n aux deux premières composantes principales",
xlab = "Première composante principale",
ylab = "Deuxieme composante principale",
panel.first = grid(),
col = colors,
pch=15
)
legend(x = 'topleft', legend = rownames(X), col = colors, pch = 15)
nrow(notes_MAN_prep) # Nombre d'individus
ncol(notes_MAN_prep) # Nombre de variables
dim(notes_MAN_prep) # On peut également utiliser 'dim' qui renvoit la dimension
library(FactoMineR)
# help(PCA)
# Ne pas oublier de charger la librairie FactoMineR
# Indication : pour afficher les résultats de l'ACP pour tous les individus, utiliser la
# fonction summary en précisant dedans nbind=Inf et nbelements=Inf
res.notes <- PCA(notes_MAN_prep, scale.unit = TRUE)
summary(res.notes, nbind = Inf, nbelements = Inf, nb.dec = 2)
eigen_values <- res.notes$eig
bplot <- barplot(
eigen_values[, 1],
names.arg = 1:nrow(eigen_values),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Eigenvalues",
col = "lightblue"
)
lines(x = bplot, eigen_values[, 1], type = "b", col = "red")
abline(h=1, col = "darkgray", lty = 5)
coords_man_stats <- res.notes$var$coord["MAN.Stats",]
coords_man_stats[1:2]
contribs <- res.notes$ind$contrib
contrib_moy_ind <- mean(contribs) # 100 * 1/42
contrib_therese <- res.notes$ind$contrib["Thérèse",3]
contrib_moy_ind
contrib_therese
quali_julien <- res.notes$ind$cos2["Julien", 1:2]
quali_julien
sum(quali_julien * 100)
contrib_moy_ind <- mean(res.notes$ind$contrib)
contrib_moy_ind
indiv_contrib_axe_1 <- sort(res.notes$ind$contrib[,1], decreasing = TRUE)
head(indiv_contrib_axe_1, 3)
indiv_contrib_axe_2 <- sort(res.notes$ind$contrib[,2], decreasing = TRUE)
head(indiv_contrib_axe_2, 3)
mal_representes <- rownames(res.notes$ind$cos2)[rowSums(res.notes$ind$cos2[,1:2]) <= mean(res.notes$ind$cos2[,1:2])]
mal_representes
res.notes_sup <- PCA(notes_MAN, scale.unit = TRUE, quali.sup = c("Mention"))
plot.PCA(res.notes_sup, choix = "ind", habillage = "Mention")
summary(res.notes_sup, nb.dec = 2, nbelements = Inf, nbind = Inf)
contrib_moy_var <- mean(res.notes_sup$var$contrib) # 100 * 1/14
contrib_moy_var
var_contrib_axe_2 <- sort(res.notes_sup$var$contrib[,2], decreasing = TRUE)
head(var_contrib_axe_2, 3)
mal_representes <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= 0.6]
mal_representes
mal_representes_moy <- rownames(res.notes_sup$var$cos2[,1:2])[rowSums(res.notes_sup$var$cos2[,1:2]) <= mean(res.notes_sup$var$cos2[,1:2])]
mal_representes_moy

View File

@@ -1,155 +0,0 @@
knitr::opts_chunk$set(echo = TRUE)
autos <- read.table("autos.csv", sep=";",header=TRUE)
rownames(autos)<-autos$Modele
autos$Modele<-NULL
autos<-autos[,c(1:6,8)]
library(FactoMineR)
help(PCA)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX") )
summary(res.autos, nb.dec=2, nb.elements =Inf, nbind = Inf, ncp=3) #les résultats avec deux décimales, pour tous les individus, toutes les variables, sur les 3 premières CP
eigenvalues <- res.autos$eig # pour faire l'eboulis des valeurs propres
bplt <- barplot(eigenvalues[, 2], names.arg=1:nrow(eigenvalues),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Percentage of variances",
col ="steelblue",
)
lines(x = bplt, eigenvalues[, 2], type="b", pch=19, col = "red")
alim <- read.table('alimentation.csv', sep=';', header=TRUE)
rownames(alim)<-alim$ROW_LABEL
alim$ROW_LABEL<-NULL
corr <- cor(alim)
corr <- cor(alim)
corr
res.alim<-PCA(alim, scale.unit=TRUE, quanti.sup = c())
summary(res.alim, nb.dec = 2, nbelements = Inf, nbind = Inf, ncp = 3)
help(cor)
corr <- cor(alim)
corr
data(iris)
head(iris)
View(iris)
corr.iris <- cor(iris)
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), quali.sup = c("OUVR"))
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), quali.sup = c("OUVR", "PRIN"))
library(FactoMineR)
help(PCA)
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), ind = c("OUVR", "PRIN"))
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), ind.sup = c("OUVR", "PRIN"))
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), ind.sup = c(3, 7))
summary(res.alim2, nb.dec = 2, nbelements = Inf, nbind = Inf, ncp = 3)
res.iris <- PCA(iris, scale.unit = TRUE)
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
res.iris <- PCA(iris, scale.unit = TRUE, quanti.sup = c('Species'))
res.iris <- PCA(iris, scale.unit = TRUE, ind.sup = c('Species'))
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
summary(res.iris, nbelements = Inf, nbind = Inf, ncp = 3)
knitr::opts_chunk$set(echo = TRUE)
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), ind.sup = c(8))
knitr::opts_chunk$set(echo = TRUE)
knitr::opts_chunk$set(echo = TRUE)
knitr::opts_chunk$set(echo = TRUE)
autos <- read.table("autos.csv", sep=";",header=TRUE)
rownames(autos)<-autos$Modele
autos$Modele<-NULL
autos<-autos[,c(1:6,8)]
library(FactoMineR)
help(PCA)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX") )
summary(res.autos, nb.dec=2, nb.elements =Inf, nbind = Inf, ncp=3) #les résultats avec deux décimales, pour tous les individus, toutes les variables, sur les 3 premières CP
eigenvalues <- res.autos$eig # pour faire l'eboulis des valeurs propres
bplt <- barplot(eigenvalues[, 2], names.arg=1:nrow(eigenvalues),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Percentage of variances",
col ="steelblue",
)
lines(x = bplt, eigenvalues[, 2], type="b", pch=19, col = "red")
alim <- read.table('alimentation.csv', sep=';', header=TRUE)
rownames(alim)<-alim$ROW_LABEL
alim$ROW_LABEL<-NULL
help(cor)
corr <- cor(alim)
corr
res.alim<-PCA(alim, scale.unit=TRUE, quanti.sup = c())
summary(res.alim, nb.dec = 2, nbelements = Inf, nbind = Inf, ncp = 3)
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), ind.sup = c(8))
summary(res.alim2, nb.dec = 2, nbelements = Inf, nbind = Inf, ncp = 3)
data(iris)
head(iris)
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
summary(res.iris, nbelements = Inf, nbind = Inf, ncp = 3)
knitr::opts_chunk$set(echo = TRUE)
autos <- read.table("autos.csv", sep=";",header=TRUE)
rownames(autos)<-autos$Modele
autos$Modele<-NULL
autos<-autos[,c(1:6,8)]
library(FactoMineR)
help(PCA)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
plot.CPA(res.iris)
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = none)
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = None)
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = NONE)
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = NULL)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = NULL)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "None")
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = NA)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "none")
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
plot.PCA(res.iris, choix = "ind", habillage = 5)
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "none")
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "none")
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "none")
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "none")
dimdesc(res.iris)
knitr::opts_chunk$set(echo = TRUE)
autos <- read.table("autos.csv", sep=";",header=TRUE)
rownames(autos)<-autos$Modele
autos$Modele<-NULL
autos<-autos[,c(1:6,8)]
library(FactoMineR)
help(PCA)
res.autos<-PCA(autos, scale.unit=TRUE, quanti.sup = c("PRIX"))
summary(res.autos, nb.dec=2, nb.elements =Inf, nbind = Inf, ncp=3) #les résultats avec deux décimales, pour tous les individus, toutes les variables, sur les 3 premières CP
eigenvalues <- res.autos$eig # pour faire l'eboulis des valeurs propres
bplt <- barplot(eigenvalues[, 2], names.arg=1:nrow(eigenvalues),
main = "Eboulis des valeurs propres",
xlab = "Principal Components",
ylab = "Percentage of variances",
col ="steelblue",
)
lines(x = bplt, eigenvalues[, 2], type="b", pch=19, col = "red")
alim <- read.table('alimentation.csv', sep=';', header=TRUE)
rownames(alim)<-alim$ROW_LABEL
alim$ROW_LABEL<-NULL
help(cor)
corr <- cor(alim)
corr
res.alim<-PCA(alim, scale.unit=TRUE, quanti.sup = c())
summary(res.alim, nb.dec = 2, nbelements = Inf, nbind = Inf, ncp = 3)
res.alim2 <- PCA(alim, scale.unit=TRUE, quanti.sup = c(), ind.sup = c(8))
summary(res.alim2, nb.dec = 2, nbelements = Inf, nbind = Inf, ncp = 3)
data(iris)
head(iris)
res.iris <- PCA(iris, scale.unit = TRUE, quali.sup = c('Species'))
plot.PCA(res.iris, choix = "ind", habillage = 5, label = "none")
dimdesc(res.iris)
summary(res.iris, nbelements = Inf, nbind = Inf, ncp = 3)