Bonjour, je suis actuellement stagiaire et j'ai besoin d'analyser un jeu de données qualitative sur des notations de maïs doux.
J'arrive à faire l'AFCM par la fonction dudi.acm, mais je n'arrive pas à obtenir mes graphiques finaux de type scatter (avec les cercles). Le message d'erreur est le suivant : Error in s.class(x$li, oritab[, i], xax = xax, yax = yax, clabel = 1.5, : factor expected for fac

J'ai fouiné pour comprendre que la fonction scatter faisait tourner la fonction s.class en boucle, mais ça ne m'a pas beaucoup avancé. Je suppose que cela vient de mon jeu de données, mais je ne vois vraiment pas d'où ça vient car toute mes variables sont bien qualitatives.

Si quelqu'un pouvait m'éclairer je lui en serait très reconnaissant.

Voici mon script et ce que j'obtient quand je lance le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
> str(epis_stat)
Classes 'tbl_df', 'tbl' and 'data.frame':	57 obs. of  6 variables:
 $ CovEpi   : Factor w/ 5 levels "à peine couvert",..: 3 4 1 1 2 3 1 1 2 4 ...
 $ RempliEpi: Factor w/ 3 levels "mal remplis",..: 1 3 3 3 3 3 3 3 3 2 ...
 $ Gouts    : Factor w/ 4 levels "Desagreable (--)",..: 1 1 1 1 1 1 1 1 1 1 ...
 $ Couleur  : Factor w/ 4 levels "pâle","un peu pâle",..: 3 3 3 3 3 3 3 1 3 4 ...
 $ PartRafle: Factor w/ 4 levels "très mauvais",..: 4 2 4 3 4 3 2 2 3 2 ...
 $ LongEpi  : Factor w/ 4 levels "petit","moyen",..: 2 1 3 3 4 4 3 4 2 2 ...
> head(epis_stat)
# A tibble: 6 x 6
               CovEpi           RempliEpi            Gouts         Couleur PartRafle   LongEpi
               <fctr>              <fctr>           <fctr>          <fctr>    <fctr>    <fctr>
1        bien couvert         mal remplis Desagreable (--) couleur moyenne  très bon     moyen
2 un peu trop couvert complètment remplis Desagreable (--) couleur moyenne   mauvais     petit
3     à peine couvert complètment remplis Desagreable (--) couleur moyenne  très bon      long
4     à peine couvert complètment remplis Desagreable (--) couleur moyenne       bon      long
5      un peu couvert complètment remplis Desagreable (--) couleur moyenne  très bon très long
6        bien couvert complètment remplis Desagreable (--) couleur moyenne       bon très long
> afcm1 <- dudi.acm(epis_stat,scann=F,nf=6)
> afcm1
Duality diagramm
class: acm dudi
$call: dudi.acm(df = epis_stat, scannf = F, nf = 6)
 
$nf: 6 axis-components saved
$rank: 18
eigen values: 0.351 0.2985 0.2662 0.2611 0.2601 ...
  vector length mode    content       
1 $cw    24     numeric column weights
2 $lw    57     numeric row weights   
3 $eig   18     numeric eigen values  
 
  data.frame nrow ncol content             
1 $tab       57   24   modified array      
2 $li        57   6    row coordinates     
3 $l1        57   6    row normed scores   
4 $co        24   6    column coordinates  
5 $c1        24   6    column normed scores
other elements: cr 
> scatter(afcm1)
Error in s.class(x$li, oritab[, i], xax = xax, yax = yax, clabel = 1.5,  : 
  factor expected for fac