Transformer un tableau 'cas*variables' en 'variables*variables'

Résolu/Fermé
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 - 23 déc. 2017 à 15:58
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 - 26 déc. 2017 à 14:09
Bonjour,
J'ai un tableau composé d'une liste de cas (lignes) et d'une série de variables (colonnes). Les cellules du tableau contiennent des données chiffrées, à savoir le nombre de fois que, pour chaque cas, telle ou telle variable est présente (c'est-à-dire les occurrences). Il s'agit de nombres entiers peu élevés, généralement 1. La plupart des cellules restent vides ou contiennent zéro (ce qui revient au même).
J'aimerais transformer ce tableau en un tableau symétrique, de sorte qu'on puisse y lire la fréquence des cooccurrences de variables. Ce nouveau tableau énumère de ce fait les variables verticalement et horizontalement. La diagonale d'un tel tableau donne le nombre total de fois qu'une variable s'applique.
Est-ce possible avec Excel sans devoir introduire des formules cellule par cellule? Si ce n'est pas possible avec Excel, y a-t-il un autre logiciel qui le permet (par exemple SPSS où je n'ai toutefois pas trouvé cette fonction) ?
Merci d'avance

6 réponses

via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
23 déc. 2017 à 16:14
Bonjour

On comprendrait mieux avec un exemple de ton fichier et du 2eme tableau !
A poster sur cjoint.com, faire créer un lien, le copier et revenir le coller ici

Dans l'attente
Cdlmnt
Via
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
23 déc. 2017 à 16:33
Voici le lien: https://www.cjoint.com/doc/17_12/GLxpCy3gLxd_CCM.txt
Utiliser une police à distance fixe pour une lecture plus facile.
Commentaire dans le fichier.
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
23 déc. 2017 à 17:07
Pas sûr d'avoir tout compris
Un exemple, me dire si ça convient
https://www.cjoint.com/c/GLxqheYEhdL

Cdlmnt
Via
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
23 déc. 2017 à 17:34
Bonsoir,

Si la solution de via55, que je salue, te convient, tu peux obtenir le même résultat avec : =PRODUITMAT(TRANSPOSE($B$2:$J$31);$B$2:$J$31)

cordialement
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
24 déc. 2017 à 10:01
Bonjour Via,
C'est exactement ça. Incroyable! C'est de la haute voltige informatique !! Un tout grand merci.
Joyeuses fêtes
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
24 déc. 2017 à 10:16
Bonjour JvDo,
C'est exactement cela que je cherchais, en effet. Un grand merci également. Je vais aussi essayer cette formule.
A bientôt (et déjà: bonnes fêtes)
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
24 déc. 2017 à 17:15
Rebonjour Via et JvDo,
Mes premières tentatives d'utiliser les formules ont échoué. J'ai sans doute encore des choses à apprendre. Ne connaissant pas la signification de dollars $ dans Excel, j'étudie la question.
A bientôt j'espère
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
24 déc. 2017 à 17:25
Re

Les $ figent la référence
$A$1 fige la référence à la cellule A1 (référence absolue)
$A1 fige la référence à la colonne A (devient $A2 à la ligne suivante si on étire la formule) et A$1 fige la référence à la ligne 1 (devient B$1 à la colonne suivante) ce sont des références semi-absolues
A1 change si on décale la formule en ligne comme en colonne (référence relative)

A+
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
24 déc. 2017 à 18:20
Merci pour cette explication, Via55. Elle résume très bien ce que j'ai entretemps trouvé à gauche et à droite sur internet.
Malheureusement, je ne parviens pas à refaire le second tableau un peu plus bas sur le tableur (ceci après avoir adapté les dénominations de cellule du tableau symétrique à créer, c'est-à-dire dans le cas présent en remplaçant $L2 par $L14 et M$1 par M$14, tous les autres éléments de la formule se référant, sauf erreur, au tableau d'origine). En suivant l'exemple reçu, j'ai collé la formule dans la première case (ici donc L15), puis je l'ai copiée à droite et vers le bas. Je n'obtiens cependant que des #VALEUR! et des ####.
Hormis qu'il n'y avait pas d'adaptations à faire pour autant que j'aie compris, il en est de même pour la formule de JvDo.
Je crains que cela me dépasse. Je pensais pouvoir trouver un raccourci pour mon travail, mais en calcul "manuel" je l'aurais sans doute déjà terminé.
Encore merci à vous deux d'avoir eu la gentillesse de vouloir m'aider.
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
24 déc. 2017 à 18:44
Il n'y a pas de raison de ne pas pouvoir adapter la formule
Poste un exemple de ton fichier sur cjoint.com, fais créer un lien que tu copies et reviens coller ici et en message privé si tu veux plus de confidentialité, je regarderai ça
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
24 déc. 2017 à 19:13
Bonsoir,

Tu ne pourras pas obtenir le tableau 2 à partir du tableau 1, ça c'est certain.
Ils ne se correspondent pas.

Et si tu nous en disais plus sur ton problème! Tu donnes l'impression de vouloir faire une ACP mais en même temps tu te perds dans des calculs de base. Donc dis nous en plus.

cordialement
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
25 déc. 2017 à 17:15
Bonjour,
J'avoue que le problème est peu commun et que, malgré que j'aie l'habitude de travailler avec des formules dans Excel, je suis loin d'être un spécialiste de ce logiciel.
Une analyse en composantes principales serait, en principe, envisageable. Mais je dispose de trop peu de données pour cela. Je me suis dès lors contenté d'une analyse par grappes.
Dans ces cas, mon tableau de contingence convient évidemment tel quel.
Le problème posé provient du fait que j'ai l'intention d'effectuer, en plus, une analyse avec une autre méthode, toujours en cours de développement. Cette méthode trouve son origine dans l'analyse des mots associés (bibliométrie, scientométrie...). D'autres applications n'étaient pas encore envisagées à ce moment. De ce fait, les tableaux de contingence de ce logiciel sont binaires. Ils n'acceptent, au stade actuel de son développement, que les valeurs 1 ou 0. Cependant, en attendant que le développement du logiciel en question reprenne, je peux contourner ce problème, puisque ce même logiciel permet d'entrer les données sous une autre forme, à savoir un tableau symétrique. Pour l'obtenir, je pensais trouver une manière simple qui me ferait gagner du temps.
Ceci étant, j'ai fait (sans doute maladroitement...) l'essai avec les deux formules qui m'ont aimablement été proposées, mais je ne parviens pas à obtenir un résultat. Voici le lien vers le fichier comportant le tableau de départ ainsi que le tableau symétrique que Via55 m'a fait parvenir et mes deux tentatives:
GLzoLrZWaLd_Exercice-GLxqheYEhdL-victime-nbsi.xlsx
Sans doute ai-je mal compris ou mal interprété quelque chose. J'ai procédé comme décrit hier à 18h20 (message n° 9 plus haut).
Petite précision: J'utilise Excel 2007. Cette version serait-elle en cause?
Ne laissez pas mon ignorance vous gâter ce jour de fête. Il n'y a pas le feu au lac. Encore merci pour l'intérêt que vous portez à ma question.
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
25 déc. 2017 à 18:29
Bonsoir,

Ton lien cjoint n’est pas complet.

Cdlt
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
25 déc. 2017 à 18:49
0
JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 856
25 déc. 2017 à 22:38
Bonsoir,

Là on est toujours sur le premier calcul.
Voilà de quoi lui tordre le cou : https://www.cjoint.com/c/GLzvLCalL8b

Maintenant, à toi de voir si tu veux compter le nombre de 1 de chaque variable DES ...... LEG.
Ou alors avoir la norme euclidienne au carré de ces mêmes variables.

Lorsque tu n'as que des 0/1, c'est la même chose. Quand tu auras autre chose que des 0/1, il faudra choisir.


Cordialement
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
26 déc. 2017 à 14:09
Bonjour JvDo,
Je viens de refaire le tableau en tenant compte des instructions complémentaires contenues dans le fichier. Et ça marche! De plus, la formule est assez simple. Elle est notée.
Merci beaucoup pour cette aide,
VDL
0
via55 Messages postés 14405 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 25 avril 2024 2 703
Modifié le 25 déc. 2017 à 18:55
Bonjour

Ma formule ne peux fonctionner qu'avec les valeurs en titres de lignes et de colonnes du tableau à double-entrée et auxquelles font références les formules

"L'imagination est plus importante que le savoir."    A. Einstein
0
VictimeDeLinformatique Messages postés 184 Date d'inscription vendredi 17 juin 2016 Statut Membre Dernière intervention 26 avril 2024 3
25 déc. 2017 à 22:10
En effet, il fallait transposer séparément les entêtes (je m'étais déjà étonné pourquoi je ne trouvais pas de formule dans leurs cellules). L'ajout des en-têtes m'a permis de découvrir en plus que j'avais fait petite erreur de transcription dans la formule. Je l'ai corrigée. Maintenant, tout fonctionne parfaitement.
J'admire la structure hautement sophistiquée de cette formule que je serais incapable de reconstruire à partir de zéro moi-même. Je conserverai donc précieusement le fichier de manière à pouvoir la copier en l'adaptant selon les besoins.
Un tout grand merci pour cette aide! Problème résolu.
0