IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

permuter des données et faire un test


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2017
    Messages : 7
    Par défaut permuter des données et faire un test
    Bonjour,

    je suis débutante sur R, et voilà un moment que je cherche une solution à mon problème.

    Le voilà : j'ai un tableau à deux colonnes. La première contient des classes (Cluster 1, cluster 2....), la deuxième contient des données de présence absence (0 et1). Ce que je souhaite faire c'est "permuter" ou randomiser les 0 et les 1 de la deuxième colonne pour tester si la distribution des 0 et des 1 est le fait du hasard ou si il y a une distribution particulière de mes valeurs observées.

    Merci d'avance pour votre aide

    Caro


    permH3K36.ods

  2. #2
    Membre émérite
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Par défaut
    La fonction sample permet de permuter un ensemble de valeurs. Par exemple, si data est le data.frame, sample( data$cluster_exp) permute les valeurs de la colonne cluster_exp.

    N.B. : quand on utilise un générateur aléatoire, ce que fait sample, il est préférable d'initialiser le générateur par la fonction set.seed. Dans ces conditions, on est assuré qu'on retrouvera toujours les mêmes valeurs à chaque lancement de la procédure, ce qui rend le code reproductible.

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2017
    Messages : 7
    Par défaut
    Super, merci!

    en fait j'ai fini par réussir à faire la permutation. Et maintenant il faut que je la fasse 10 000 fois. En fait c'est du "resample" que je dois faire.
    Je pensais l'inclure dans une boucle for et faire un fisher.test à chaque resample..

    Merci encore

  4. #4
    Membre émérite
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Par défaut
    C'est une solution. Une autre serait d'aller voir le package 'coin' s'il ne répond pas de manière plus générale au problème.

  5. #5
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2017
    Messages : 7
    Par défaut
    en fait je ne parviens pas à savoir 'il existe une fonction pour ce que je dois faire ou si cela nécessite de faire une boucle :

    j'ai fait un test de fisher qui m'indique que mes deux variables (Cluster et présence/absence de quelque chose) sont reliées.

    Ce que je dois faire c'est changer la distribution de la variable "présence/absence" par une permutation ou un resample (je ne sais pas lequel) et refaire à chaque fois le test de fisher.

    Le but est de voir si la dépendance entre mes variables est liée au hasard ou non...

    Voilà mon vrai problème

  6. #6
    Membre émérite
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Par défaut
    Si on suit Manly, c'est la variable observée qui doit être permutée mais dans le cas du test d'indépendance entre deux variables, le choix de la variable à permuter ne devrait rien changer. Cependant, je pense que l'utilisation de la fonction indepence_test du package coin répond parfaitement au problème (cf. page de présentation du package :
    The coin package provides an implementation of a general framework for conditional inference procedures commonly known as permutation tests.
    )

Discussions similaires

  1. lire dans un fichier des données et faire tableau
    Par membreComplexe12 dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 5
    Dernier message: 27/08/2015, 23h14
  2. Permutation des données dans un vecteur
    Par arbas dans le forum MATLAB
    Réponses: 5
    Dernier message: 23/04/2011, 10h40
  3. [XL-2007] parcourir des données et faire un tri
    Par rashka dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/12/2009, 15h18
  4. [XL-2002] Permutation des données d’un tableau.
    Par keko38 dans le forum Excel
    Réponses: 2
    Dernier message: 15/05/2009, 09h15
  5. JSP: faire apparaitre des données ...
    Par LeDébutantJava dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 19/06/2004, 16h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo