3012 résultats trouvés

Aller à la recherche avancée

par Logez Maxime
24 Fév 2020, 06:59
Forum : Questions en cours
Sujet : grep("y|x", data, fixed = TRUE) ne renvoie rien
Réponses : 2
Vues : 105

Re: grep("y|x", data, fixed = TRUE) ne renvoie rien

Bonjour, Le problème vient de l'argument fixed. Si tu l'enlèves tu n'as plus de soucis. J'aurai mis des parenthèses autours de chaque chaîne de caractères a retrouvée dans le texte, pour grouper les expressions. proroelectro <- grep("(prorogations)|(vote électronique)", x = Accordstxt, val...
par Logez Maxime
19 Fév 2020, 16:44
Forum : Questions en cours
Sujet : [RESOLU] filter ou pas filter
Réponses : 8
Vues : 185

Re: filter ou pas filter

Sans oublier le ungroup() ;) Prendre de bonnes habitudes de codage c'est très bien, mais dans des cas simples comme celui-ci où il n'y a pas d'autres calculs derrière, je n'en vois pas trop l'utilité. Tous les codes ici n'ont pas pour vocation à servir à la création de package, où à d'autres choses...
par Logez Maxime
19 Fév 2020, 16:06
Forum : Questions en cours
Sujet : [RESOLU] filter ou pas filter
Réponses : 8
Vues : 185

Re: filter ou pas filter

Bonjour,

Pourquoi ne pas aller plus loin et faire le calcul directement sur tout le tableau ?

Code : Tout sélectionner

tab %>%
  group_by(dnais) %>%
  summarise(N = n(), PERES = n_distinct(p), MERES = n_distinct(m), Fmoy = mean(F))

Cordialement,
Maxime
par Logez Maxime
19 Fév 2020, 09:09
Forum : Questions en cours
Sujet : [Resolu] Repérer la plus longue série de valeurs croissantes ou de positions contiguës dans un vecteur
Réponses : 8
Vues : 273

Re: Repérer la plus longue série de valeurs croissantes ou de positions contiguës dans un vecteur

Bonjour, une solution toujours basée sur rle (qui ne recherche que la première série la plus longue ): xd <- diff(x) xc <- c(0, (xd >0)*1) r1 <- rle(xc) iplusmax <- which.max(r1$le*r1$val) plusmax <- r1$le[iplusmax] deb <- sum(r1$le[seq_len(iplusmax-1)]) fin <- deb+plusmax serie <- x[deb:fin] Pour c...
par Logez Maxime
17 Fév 2020, 08:30
Forum : Questions en cours
Sujet : une même opération sur plusieurs dataframes en même temps
Réponses : 4
Vues : 100

Re: une même opération sur plusieurs dataframes en même temps

Bonjour, tout dépend ce que tu souhaites faire. Si tu souhaites modifier les objets initiaux : for (i in 1:10) { assign(sprintf("p%d", i), get(sprintf("p%d", i)) %>% group_by(d) %>% mutate (POPmax=max(pop,na.rm=TRUE), origine = sprintf("p%d", i))) } Cordialement, Maxime
par Logez Maxime
14 Fév 2020, 09:28
Forum : Questions en cours
Sujet : Conserver les NA dans un subset
Réponses : 1
Vues : 103

Re: Conserver les NA dans un subset

Bonjour,

tu peux rempalcer "!=" par :

Code : Tout sélectionner

subset(df1, !df1$col %in% "X")
# ou
df1[!df1$col %in% "X", ]
Cordialement,
Maxime
par Logez Maxime
12 Fév 2020, 10:28
Forum : Questions en cours
Sujet : Changer la longueur d'une chaine de caractères
Réponses : 3
Vues : 117

Re: Changer la longueur d'une chaine de caractères

Bonjour, si tu importes tes données avec read.table, tu peux via l'argument colClasses définir la classe de chacune de tes colonnes et forcer à ce que celle des départements soit sous forme de chaîne de caractère ce qui pourrait éviter des manipulations futures. Tu peux aussi utiliser sprintf (qui e...
par Logez Maxime
11 Fév 2020, 13:33
Forum : Questions en cours
Sujet : copier des lignes si un id est identique
Réponses : 8
Vues : 224

Re: copier des lignes si un id est identique

Bonjour, Pour éviter ce genre de choses tu peux utiliser l'opérateur "%<>%". J'en suis pas fan parce que je trouve que ça manque de lisibilité dans un code, je préfère la combinaison des opérateurs "<-" et "%>%". donnees %<>% group_by(Order.ID) %>% mutate( User.id = if ...
par Logez Maxime
11 Fév 2020, 13:27
Forum : Questions en cours
Sujet : Lancer un script comprenant une interaction utilisateur dans une boucle
Réponses : 4
Vues : 126

Re: Lancer un script comprenant une interaction utilisateur dans une boucle

Bonjour, tu peux remplacer menu par readLines : genes <- c("DX","TR","VU","ZT","SR","TU","CO") geneskept <- c() for (i in 1:length(genes)) { a = genes[i] cat("\nkeep gene",a,"?\n1: yes\n2: no\n") answer <- read...
par Logez Maxime
31 Jan 2020, 13:55
Forum : Questions en cours
Sujet : Modéliser une exponentielle
Réponses : 6
Vues : 225

Re: Modéliser une exponentielle

Bonjour, 3) Une régression log-linéaire (qu'implique un argument "family=poisson" - ou quasipoisson, ce qui est la même chose sur le calcul de la vraisemblance) implique que la variable à modéliser suive une loi de Poisson, donc un comptage. Vous n'avez jamais précisé ceci dans votre quest...
par Logez Maxime
24 Jan 2020, 13:32
Forum : Questions en cours
Sujet : remove + get
Réponses : 5
Vues : 99

Re: remove + get

Bonjour, Le message d'erreur n'est pas très cohérent avec l'aide de la fonction qui dit bien : Use the list argument to specify objects via a character vector . Au contraire c'est très cohérent. Quand tu fais get("x") tu récupères un objet mais pas son nom. La sortie de get c'est un objet ...
par Logez Maxime
15 Jan 2020, 20:42
Forum : Questions en cours
Sujet : recherche/remplacer dans un dataframe
Réponses : 3
Vues : 176

Re: recherche/remplacer dans un dataframe

Bonjour,

une alternative :

Code : Tout sélectionner

df[]<-lapply(df, function(x) {x[x%in%3:7] <- NA; x})
Cordialement,
Maxime
par Logez Maxime
14 Jan 2020, 13:52
Forum : Questions en cours
Sujet : Import avec séparateur au choix
Réponses : 12
Vues : 322

Re: Import avec séparateur au choix

Bonjour, probablement que dans le corps de ton texte il existe des ";" et que quand tu remplaces ton séparateur à 3 caractères par le point virgule alors il va y avoir une cohfusion entre les points virgules des données et ceux qui servent de séparateur. Ca va faire que pour certaines lign...
par Logez Maxime
12 Jan 2020, 20:03
Forum : Questions en cours
Sujet : Import avec séparateur au choix
Réponses : 12
Vues : 322

Re: Import avec séparateur au choix

Bonjour,

une alternative à la solution de Gabriel :

Code : Tout sélectionner

rl <- readLines(myfile)
rl_s <-gsub("\\|@=", ";", rl)
mm <- read.table(textConnection(rl_s), sep = ";", h= T)
Cordialement,
Maxime
par Logez Maxime
12 Jan 2020, 19:59
Forum : Questions en cours
Sujet : Fonction which
Réponses : 2
Vues : 137

Re: Fonction which

Bonsoir,

tu peux te servir de la fonction aggregate avec FUN = max pour avoir la valeur max ou FUN= which.max si tu veux la position de la valeur max :

Code : Tout sélectionner

aggregate(NucNb ~ Pos, df, max)

Cordialement,
Maxime

Aller à la recherche avancée

cron