Bonjour,

J'utilise table() pour trouver le nombre d'éléments (mutations) qui se trouvent dans différentes catégories (des bandes cytogénétiques)

Pour cela, j'utilise :
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
 
table(data_loh$cytoband)
 
 10p11.1 10p11.21 10p11.22  10p12.1  10p12.2 10p12.31    10p13    10p14 
       0        0        0        0        0        0        0        0 
 10p15.1  10p15.3 10q11.21 10q11.22 10q11.23  10q21.1  10q21.3  10q22.1 
       0        0        0        0        2        1        0        0 
 10q22.2  10q22.3  10q23.1  10q23.2 10q23.31 10q23.32 10q23.33  10q24.1 
       0        0        2        0        0        0        0        1 
 10q24.2 10q24.31  10q25.1 10q26.12 10q26.13  10q26.3 11p11.12  11p11.2 
       0        1        0        0        0        0        0        0 
   11p12  11p14.1  11p14.2  11p14.3  11p15.1  11p15.2  11p15.3  11p15.4 
       0        0        0        0        0        0        0        0 
 11p15.5    11q11  11q12.1  11q12.2  11q12.3  11q13.1  11q13.2  11q13.3 
       0        0        0        0        0        1        0        0 
 11q13.4  11q13.5  11q14.2  11q14.3  11q22.2  11q22.3  11q23.1  11q23.2 
       0        0        0        0        0        0        0        1 
 11q23.3  11q24.1  11q24.2  11q24.3  12p11.1  12p12.1  12p12.3  12p13.2 
       0        0        0        0        0        0        0        1 
12p13.31 12p13.32 12p13.33    12q12 12q13.11 12q13.12 12q13.13  12q13.2 
       0        0        0        0        0        0        0        0 
 12q13.3  12q14.2  12q23.2  12q23.3 12q24.11 12q24.12 12q24.13 12q24.23 
       0        0        0        1        0        0        0        0 
....
Les bandes où il y a 0 mutation ne m'intéressent pas. J'ai donc un résultat plus concis avec :
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
 
table(as.character(data_loh$cytoband))
 
10q11.23  10q21.1  10q23.1  10q24.1 10q24.31  11q13.1  11q23.2  12p13.2 
       2        1        2        1        1        1        1        1 
 12q23.3  13q13.3 13q14.11 13q14.13  14q32.2 14q32.31  15q15.1  15q24.1 
       1        1        1        1        1        1        7        1 
 16p11.2  16p13.3  16q22.1  17p13.1  17p13.2  17q11.2    17q12 17q21.32 
       2        2        2        1        1        1        2        7 
18p11.32 19p13.11 19p13.12  19p13.3 19q13.12  19q13.2 19q13.31 19q13.32 
       1        2        2        1        1        2        1        1 
 1p36.13  1p36.31   1q23.1   1q25.2   1q32.1 20q13.33  21q22.3  22q12.1 
       2        1        1        1        1        1        1        1 
 22q13.1  22q13.2 22q13.31   2p11.1   2p13.1     2p21     2q35   2q37.1 
       2        1        1        1        1        1        2        1 
  3p12.3   3q27.3  4q21.21  4q21.22  4q21.23   4q21.3   4q22.1   4q22.2 
       2        1        4        2        6        1       14        1 
  4q22.3     4q23     4q24     4q25     4q26     4q27   4q28.1   4q28.2 
       5        9       23       20       22        5       11        6 
  4q31.1  4q31.21  4q31.22  4q31.23   4q31.3   4q32.1   4q32.2   4q32.3 
       3        9        4        1       18        4        5       24 
    4q33   4q34.1   4q34.2   4q34.3   4q35.1   4q35.2   5q14.3   5q23.2 
       1        3        6        6       32       10        1        1 
  5q33.1   5q35.3   6p12.1   6p21.1   6p22.1     6q21  7q11.21  7q11.23 
       1        1        1        1        1        1        1        1 
  8p23.1   8q12.1   8q13.3  8q24.11   9p11.2   9p21.2     9q13   9q31.3 
       3        1        1        1        1        1        1        2 
  9q34.2     Xq23 
       2        1
A présent, je ne souhaite conserver que les éléments avec plus de 1 mutation, et c'est là mon problème. J'essaie :
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
 
table(data_loh$cytoband[which(table(data_loh$cytoband)>1)])
 
 10p11.1 10p11.21 10p11.22  10p12.1  10p12.2 10p12.31    10p13    10p14 
       0        0        0        0        0        0        0        0 
 10p15.1  10p15.3 10q11.21 10q11.22 10q11.23  10q21.1  10q21.3  10q22.1 
       0        0        0        0        0        0        0        0 
 10q22.2  10q22.3  10q23.1  10q23.2 10q23.31 10q23.32 10q23.33  10q24.1 
       0        0        0        0        0        0        0        0 
 10q24.2 10q24.31  10q25.1 10q26.12 10q26.13  10q26.3 11p11.12  11p11.2 
       0        0        0        0        0        0        0        0 
   11p12  11p14.1  11p14.2  11p14.3  11p15.1  11p15.2  11p15.3  11p15.4 
       0        0        0        0        0        0        0        0 
 
table(as.character(data_loh$cytoband[which(table(data_loh$cytoband)>1)]))
Ou :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
table(as.character(data_loh$cytoband[which(table(data_loh$cytoband)>1)]))
 
16p11.2  2p11.1  3p12.3 4q21.21    4q24    4q25    4q27  4q28.2  4q31.3  4q32.1 
      1       1       1       1       1       2       1       1       1       2 
 4q32.3  4q35.1 
      1       2
Et autres... Mais j'ai fini par m'embrouiller dans table() et which...
Est-il possible d'extraire des éléments de table(), en conservant le nombre d'éléments et la catégorie ? Ou faut-il le faire "à la main", dans une boucle ?

Merci d'avance,
Jane