diff --git a/Code_1er_Visu.R b/Code_1er_Visu.R
new file mode 100644
index 0000000000000000000000000000000000000000..e6067aa6782d52502ee9f5b9b30732072fab5c38
--- /dev/null
+++ b/Code_1er_Visu.R
@@ -0,0 +1,182 @@
+
+
+
+design_WS3.tsv <- read.csv("design_WS3.tsv.cvs", header = TRUE)
+
+metadata <- read.csv("C:/Users/diall/Documents/design_WS3 - design_WS3.tsv.csv", heade=TRUE)
+
+#Charger les biblioth�ques n�cessaires
+library(ggplot2)
+library(dplyr)
+library(tidyr)
+library(corrplot)
+library(ComplexHeatmap)
+
+#Cr�er un datatframe avec les donn�es fournies
+data <- data.frame(
+  sample = paste0("S", 1:12),
+  condition = c("neg", "pos", "neg", "pos", "neg", "pos", "neg", "pos", "neg", "pos", "neg", "pos"),
+  animal = c("m109", "m109", "m709", "m709", "m882", "m882", "m964", "m964", "m189", "m189", "m198", "m198"),
+  experiment = as.Date(c("04.09.2024", "04.09.2024", "12.09.2024", "12.09.2024", "17.09.2024", "17.09.2024", "17.09.2024", "18.09.2024", "30.10.2024", "30.10.2024", "30.10.2024", "30.10.2024"), format="%d.%m.%Y"),
+  extraction = as.Date(c("04.09.2024", "04.09.2024", "12.09.2024", "12.09.2024", "18.09.2024", "18.09.2024", "18.09.2024", "18.09.2024", "30.10.2024", "30.10.2024", "30.10.2024", "30.10.2024"), format="%d.%m.%Y"),
+  volume = c(18, 18, 18, 18, 17, 18, 18, 18, 12, 12, 12, 12),
+  quantity = c(520, 936, 718, 223, 15476, 90, 4559, 954, 685, 2671, 72, 75)
+)
+
+#Afficher les premi�res lignes des donn�es
+head(data)
+
+#2- Analyse de corr�lations
+#Selectionner les variables num�riques
+numeric_data <- data%>% select(volume, quantity)
+
+#Calculer la matrice de corr�lation
+cor_matrix <- cor(numeric_data)
+
+#Visualiser la matrice de corr�lation avec corrplot
+corrplot(cor_matrix, method = "circle", type = "upper", tl.col = "black", tl.srt = 45)
+
+#Tableau de contingence entre condition et animal
+contingency_table <- table(data$condition, data$animal)
+
+#Certaines valeurs de certaines cellules sont trop faible donc on utilise le test de Fisher au lieu de chi2
+#il est plus adapt� pour les petits echantillons
+#Appliquer le test exact de Fisher
+fisher_test <- fisher.test(contingency_table)
+print(fisher_test)
+#P_value= 1: il n'y a aucune diff�rence significative dans la distribution des animaux entre ces deux conditions
+#Les 2 variables (condition et animal) sont ind�pendantes
+ 
+#visualisation du tableau de contingence
+print(contingency_table)
+
+#3- Visualisatiions adapt�es
+#Boxplot pour l'effet de la condition sur la quantit�
+ggplot(data, aes(x = condition, y= quantity, fill = condition)) +
+  geom_boxplot() +
+  labs(title= "Effet de la condition sur la quantit�",
+       x= "Condition",
+       y= "Quantit�") + 
+  theme_minimal()
+#Interpretation
+#Le graphe montre que la condition positive (pos) est g�n�ralement associ�e
+#� des quantit�s plus �lev�es que la condition n�gative (neg)
+
+#Boxplot pour l'effet de l'animal sur la quantit�
+ggplot(data, aes(x = animal, y= quantity, fill = animal)) +
+  geom_boxplot() +
+  labs(title = "Effet de l'animal sur la quantit�",
+       x= "Animal",
+       y= "Quantit�") +
+  theme_minimal()
+#Interpretation
+#Le graphe montre que l'animal a un effet significatif sur la quantit� m�sur�e
+#m882 se distingue clairement avec une quantit� tr�s �lev�e, ce qui pourrait 
+#indiquer une particularit� biologique ou exp�rimentale
+#Les autres animaux ont des quantit�s plus faibles, mais avec des variations 
+#entre eux
+
+
+#Heatmap pourles interactions crois�es
+#Pr�parer les donn�es pour la heatmap
+heatmap_data <- data %>%
+  group_by(condition, animal) %>%
+  summarise(mean_quantity= mean(quantity)) %>%
+  spread(key= animal, value = mean_quantity)
+
+#Convertir en matrice
+heatmap_matrix <- as.matrix(heatmap_data[,-1])
+rownames(heatmap_matrix) <- heatmap_data$condition
+
+#Visualiser la heatmap avec ComplexHeatmap
+Heatmap(heatmap_matrix, name= "Quantit� moyenne",
+        row_title = "Condition", column_title = "Animal",
+        row_names_side = "left", column_names_side = "top")
+
+#Scatter plot pour volume vs quantit� avec r�gression lin�aire
+ggplot(data, aes(x= volume, y= quantity)) +
+  geom_point(aes(color= condition), size=3) +
+  geom_smooth(method = "lm", se= FALSE, color= "blue") +
+  labs(title = "Relation entre volume et quantit�",
+       x= "Volume",
+       y= "Quantity") +
+       theme_minimal()
+
+
+#ANOVA  pour comparer les animaux
+#anova pour comparer les quantit�s entre les animaux
+anova_result <- aov(quantity ~ animal, data= data)
+summary(anova_result)
+
+#0.782 > 0.597 signifie qu'il n'y a pas de diff�rence
+#statistiquement significative entre les moyennes des groupes d'animaux
+#l'animal n'est pas un facteur influen�ant significativement la quantit� dans les donn�es
+
+
+#V�rifier les hypoth�ses de l'ANOVA
+#Homog�n�it� des variances(homosc�dasticit�)
+install.packages("carData")
+library(car)
+class(data)
+colnames(data)
+leveneTest(quantity  ~ animal, data = metadata )
+#Le test de Levene retourne une valeur F extremement �lev�e
+#p-value est extremeent faible, indiquant que les
+#variances ne sont pas homog�nes entre les groupes d�finis par animal
+
+
+#Test de Bartlett
+bartlett.test(quantity ~ animal, data = metadata)
+#Les r�sultats du test de Bartlett indiquent que les variances entre 
+#les groupes d�finis par la variable animal ne sont pas homog�nes
+#p-value < 5%, nous rejetons l'hypoth�se nulle d'homog�n�it� des variances
+
+#Test de Fligner-Killeen
+fligner.test(quantity ~ animal, data = metadata)
+#p-value= 0.05138 est proche de 5% les groupes sont marginalement homog�nes
+
+
+#Test Welch
+oneway.test(quantity ~ animal, data = metadata, var.equal = FALSE)
+
+#Tracer un boxplot pour inspecter les variances entre groupes
+boxplot(quantity ~ animal, data = metadata, main = "Quantities by Animal", ylab = "Quantity", xlab = "Animal")
+#Interpretation
+#Le groupe m882 pr�sente une variabilit� beaucoup plus importante que les
+#autres groupes, avec une �tendue tr�s large des valeurs(la boite et les moustaches sont tr�s �tendus)
+#Cela pourrait expliquer pourquoi le test d'homog�n�it� des variances comme celui
+#Bartlett ou de Fligner-Killen a d�tect� une h�t�rog�n�it�
+#Les groupes m109 et 3198 montrent des valeurs de quantity beaucoup plus faibles et homog�nes
+#avec une faible dispersion des donn�es
+#Il semble qu'il y ait des observations extremes dans certains groupes, en particulier dans m882.
+#Ces valeurs peuvent influencer les tests statistiques et les r�sultats
+#Les grandes diff�rences de variabilit� entre les groupes(notament m882 vs les autres) rendent les hypoth�ses
+#d'homog�n�it� des variances et de normalit� difficiles � maintenir
+#L'ANOVA classique pourrait ne pas �tre appropri�e en raison de ces diff�rences importantes
+
+
+
+#Transformation des donn�es pour r�duire l'influence des valeurs extremes et stabilis�r les variances 
+metadata$quantity_log <- log(metadata$quantity + 1)
+boxplot(quantity_log  ~ animal, data = metadata, main= "Log-transformed Quantities by Animal")
+#Interpretation: la transformation logarithmique a r�duit l'amplitude de la dispersion observ�e pr�c�demment
+#Cependant, ce groupe reste le plus variable par rapport aux autres, ce qui pourrait encore influencer les analyses
+#Les groupes m109 et m198 ont des valeurs plus resserr�es et homog�nes apr�s transformation
+
+
+
+#Analyse non param�trique
+kruskal.test(quantity  ~ animal, data = metadata)
+
+#Identifier les valeurs etremes dans m882 et �valuer leur impact
+boxplot.stats(metadata$quantity[metadata$animal == "m882"])
+
+#comparaison par paires
+pairwise.wilcox.test(metadata$quantity, metadata$animal, p.adjust.method = "bonferroni")
+
+#Groupes convertis en facteurs
+metadata$anima <- as.factor(metadata$animal) 
+table(metadata$animal)
+#Normalit� des r�sidus
+#Test de Shapiro-Wilk
+(shapiro.test(residuals(anova_result)))