0
votes

Comment créer une variable basée sur les données de données des valeurs provenées dans R?

Je vais fusionner les deux DF ci-dessous dans l'ordre croissant par ordre de temps, non-duplication. Mon objectif est de disposer également de deux nouvelles variables.

time var1 var2
0.5   0    6
1.5   1    0
2.5   0    2
3.5   1    1
4.5   2    0
5.5   1    0
...


1 commentaires

Pouvez-vous reformater votre question et fournir exemple reproductible


3 Réponses :


1
votes

Si j'ai compris comment votre Dataframe ressemble correctement (quelque chose qui serait créé via :) xxx pré>

alors vous obtenez ce que vous recherchez par: P>

df_new = data.frame(time = sort(unique(c(df1$time, df2$time))), var1 = sapply(sapply(time, function(x) {df1$freq[df1$time == x]}), function(x) {ifelse(length(x) == 0, 0, x)}), var2 = sapply((sapply(time, function(x) {df2$freq[df2$time == x]})), function(x) {ifelse(length(x) == 0, 0, x)}))


0 commentaires

1
votes

CODE - BASE R STRAND>

df1 <- read.table(text = 
'time   freq                  
1   1.5    1
2   3.5    1
3   4.5    2
4   5.5    1
5   8.5    2
6   9.5    1
7  10.5    1
8  11.5    1
9  15.5    1
10 16.5    1
11 18.5    1
12 23.5    1
13 26.5    1', header = TRUE, stringsAsFactor = FALSE)

df2 <- read.table(text = 
'time freq
1  0.5    6
2  2.5    2
3  3.5    1
4  6.5    1
5 15.5    1', header = TRUE, stringsAsFactor = FALSE)


0 commentaires

0
votes

une approche plus simple en utilisant Tidyverse ou dplyr : xxx


0 commentaires