Par exemple, j'ai le fichier de données suivant ( et je souhaite insérer la colonne df1 code>):
Price2 code> dans le Cadre de données précédent, de sorte que je répète la ligne jusqu'à la date suivante, mais cette "date suivante" ne figure pas sur le
df1 code> Dataframe: p>
Date Price Price2
2020-01-01 500 50
2020-01-02 550 50
2020-01-03 480 50
2020-01-04 420 50
2020-01-07 450 20
2020-01-08 390 20
2020-01-09 430 20
2020-01-11 480 90
2020-01-12 490 90
2020-01-13 485 90
5 Réponses :
Voici un Tidyverse CODE> APPROCHE AVEC
TIDYYR :: FILL CODE>:
library(dplyr)
library(tidyr)
full_join(df1,df2) %>%
arrange(Date) %>%
tidyr::fill(Price2,.direction = "up") %>%
dplyr::filter(!is.na(Price))
Date Price Price2
1 2020-01-01 500 50
2 2020-01-02 550 50
3 2020-01-03 480 50
4 2020-01-04 420 50
5 2020-01-07 450 20
6 2020-01-08 390 20
7 2020-01-09 430 20
8 2020-01-11 480 90
9 2020-01-12 490 90
10 2020-01-13 485 90
supposant que le deuxième Dataframe avec Ça devrait fonctionner, laissez MEE savoir s'il n'a pas . p> p> Price2 code> est appelé
df2 code>:
dplyr code> +
zoo code>:
Ceci semble fonctionner:
Date Price2 Price 1: 2020-01-01 50 500 2: 2020-01-02 50 550 3: 2020-01-03 50 480 4: 2020-01-04 50 420 5: 2020-01-05 50 450 6: 2020-01-06 50 390 7: 2020-01-07 20 430 8: 2020-01-09 20 490 9: 2020-01-10 20 485 10: 2020-01-11 90 485 11: 2020-01-12 90 490 12: 2020-01-13 90 450
en utilisant données: em> p> couper code>.