Extraire une partie des résultats de table()
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:
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:
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:
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:
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