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 :

Partitionnement d'un data frame


Sujet :

R

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 65
    Points : 77
    Points
    77
    Par défaut Partitionnement d'un data frame
    Bonjour à tous,
    Je suis débutante sur R et j'ai besoin de votre aide.
    J'ai un fichier Excel.
    J'ai importé ce fichier dans R.
    Voici mon fichier :
    Nom : Capture.PNG
Affichages : 392
Taille : 1,2 Ko
    Je veux partitionner ce fichier de la manière suivante, par exemple :
    Nom : Capture.PNG
Affichages : 431
Taille : 15,5 Ko

    J'ai trouvé un code, normalement c'est identique à ce que je veux (ou bien moi j'ai bien compris ce code)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    readRows <- function(file, sep="\n", split=" ", ...){
      tt <- strsplit(
        scan(file, what="list", sep=sep, ...),
        split=split)
      out <- lapply(tt, function(i) as.numeric(i))
      out
    }
     
    webdoc <- readRows('/home/hduser/data/webdoc-10000.dat')
    J'ai essayé ce code avec mon fichier, mais j'obtiens une erreur :
    Nom : Capture.PNG
Affichages : 370
Taille : 1,6 Ko
    Quelqu'un peut m'aider ou m'expliquer ce code S.V.P

  2. #2
    Membre du Club
    Homme Profil pro
    technicien
    Inscrit en
    Mars 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2015
    Messages : 24
    Points : 43
    Points
    43
    Par défaut
    Bonjour,

    Je ne comprends pas forcément le code, mais a priori je dirais :

    1- évite des noms de variable qui portent à confusion, 'file' est une variable dans ton cas, à ne pas confondre avec l'argument file de la fonction scan (file = "")...
    2- je n'ai jamais essayé de lire un fichier '.dat' mais peut-être que tu pourrais essayer de mettre un chemin d'accès plus explicite...


    Bon courage.

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 65
    Points : 77
    Points
    77
    Par défaut
    Bonjour et merci pour votre réponse

    Pour être plus claire, voici le chemin exact de mon fichier

    [
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "C:\\Users\\modi\\Desktop\\Big Data\\data.xlsx"
    j'ai importé mon fichier de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    library(xlsx)
    data=read.xlsx(file="C:\\Users\\modi\\Desktop\\Big Data\\data.xlsx", sheetIndex=1, header=T)
    puis j'ai fait l'appel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    webdoc <- readRows(data)

  4. #4
    Membre du Club
    Homme Profil pro
    technicien
    Inscrit en
    Mars 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : technicien
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2015
    Messages : 24
    Points : 43
    Points
    43
    Par défaut
    la fonction scan sert à lire un fichier, une connexion ou une entrée au clavier... Dans ce que tu décris, tu utilises le package xlsx pour lire ton fichier Excel. Tu affectes le résultat à un dataframe (data) et ensuite tu refais scan de ton dataframe. En gros tu tournes en rond.

    Je te conseil de réécrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    tt <- strsplit(
        scan(file, what="list", sep=sep, ...),
        split=split)
    pour obtenir la même chose à partir de ton dataframe, tu pourras alors utiliser ta fonction readRows avec ton DataFrame 'data'.

    Comme tu le vois, c'est vite confus avec ces noms de variables. D'autres seront sans doute plus efficaces que moi pour t'aider. Mais ta fonction te sert juste à lire tes données non ? Il y a sûrement un moyen plus compréhensible de faire ça...

    A+

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 65
    Points : 77
    Points
    77
    Par défaut
    Merci pour ta remarque.
    Je n'ai pas remarqué ça, car je n'ai pas compris le code
    Donc ce code ne correspond pas à ce que je veux.
    Mon but est le partitionnement du data frame selon ce que j'ai mentionné en haut.

  6. #6
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Bonjour,

    Pour pouvoir vous aider, il faudrait qu'on comprenne bien les critères de partitionnement de votre data frame actuel...
    Pour ma part, je ne comprends pas votre schéma initial.

    Vous avez un premier data frame que vous voulez découper en plusieurs data frames, c'est bien ça ?
    Sur quels critères précis voulez-vous vous appuyer pour faire ce découpage ? Pouvez-vous nous montrer, dans votre exemple, les data frames résultant de ce découpage ?
    Pour le moment, ce n'est pas assez évident sur votre premier message...
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

Discussions similaires

  1. Extraire une sous data.frame
    Par manoir dans le forum R
    Réponses: 4
    Dernier message: 10/07/2009, 14h39
  2. Dupliquer les lignes d'une data. frame
    Par manoir dans le forum R
    Réponses: 2
    Dernier message: 09/07/2009, 18h25
  3. Mean par colonne dans une data frame
    Par manoir dans le forum R
    Réponses: 3
    Dernier message: 19/06/2009, 11h06
  4. Trier une data frame
    Par manoir dans le forum R
    Réponses: 4
    Dernier message: 28/04/2009, 16h29
  5. Réponses: 2
    Dernier message: 14/11/2008, 14h53

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