Les posteurs les plus actifs de la semaine


Code R pour...

Aller en bas

Code R pour... Empty Code R pour...

Message par luvlic le Ven 8 Fév - 23:08

Bonjour

Désolé pour ce titre si générale mais je ne savais pas trop quoi mettre
voici mon problème je ne sais pas trop comment m'en sortir pour réalisé ceci
je possède une base
(la vrai est très importante j'utilise donc ces données comme test)
V1 V2
1 ID sejour
2 AAAA RE
3 AAAA RE
4 AAAA RD
5 ABCD TR
6 ABCD RT
7 AESA ZZ
8 AESA EE
9 AESA RR
10 AAAB AS
11 AAAB AS
12 AAAB FV
13 AAAB FV
14 AAAB FV
15 AAAA RD
16 AESA GH
17 ABCD RT
18 AAAA UI

J'aimerais que R me dise combien de fois reviens un ID pour un séjour différent pour chaque ID (dans le but de classer après les ID des personne qui sont venu 1 fois dans un groupes les personnes qui sont venus 2 fois dans un autre....)
Par exemple ici me dire que AAAA est venue 3 fois, ABCD 2 fois....




luvlic

Nombre de messages : 3
Date d'inscription : 08/02/2013

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Code R pour... Empty Re: Code R pour...

Message par luvlic le Sam 9 Fév - 12:16

Re-bonjour!

En attendant j'ai travaillé!
Et j'ai trouvé cette solution :

Code:
 test <- read.table("C:/test.txt",header=TRUE,sep=";")
 Tableau <- table(test$ID,test$sejour)
 recap <- apply(Tableau!=0,1,sum)
 head(recap)

Le problème étant bien sur que je stocke Tableau et qu'il arrive un moment où c'est plus possible! Je n'arrive donc pas à gérer une base importante pour ma requête écrite comme ça .
Avez-vous une meilleur idée? svp



Dernière édition par A.D. le Ven 22 Fév - 11:33, édité 2 fois (Raison : balises "code")

luvlic

Nombre de messages : 3
Date d'inscription : 08/02/2013

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Code R pour... Empty Re: Code R pour...

Message par Nik le Sam 9 Fév - 13:56

salut

c'est peut être tout simplement
Code:
table(data$ID,data$sejour)

Tu auras le nb d'occurence croisées.

Nik

Nik

Nombre de messages : 1605
Date d'inscription : 23/05/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Code R pour... Empty Re: Code R pour...

Message par luvlic le Sam 9 Fév - 14:07

Merci

Et ça fonctionne très bien c'est ce que j'ai essayé comme dit plus haut mais le problème est devenu tout autre c'est qu'avec table() sur 30000 individu il m'a fallu 15G de RAM pour m'en sortir et j'aimerai en traiter bien plus...

luvlic

Nombre de messages : 3
Date d'inscription : 08/02/2013

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Code R pour... Empty Re: Code R pour...

Message par Nik le Sam 9 Fév - 14:27

ok j'avais pas relevé le pb de ressource.

ça devient plus problématique forcément. Essaye avec
Code:
library(plyr)
ddply(data,~ID, function(x) table(x$sejour) )
je ne sais pas à l'avance si ça sera moins consommateur de ressource.

Tu peux aussi essayer xtabs de la librarie lattice.

Si rien de tout ça ne fonctionne il faudra faire des sous-tableaux ou passer via des packages qui sortent du calcul classique de R qui fait tout via la mémoire vive. Tu as par exemple le package ff ou d'autres qui font du calcul parallèle

Nik

Nombre de messages : 1605
Date d'inscription : 23/05/2008

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Code R pour... Empty Re: Code R pour...

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum