0
votes

Comment insérer une colonne et répéter des lignes jusqu'à la variable suivante dans R

Par exemple, j'ai le fichier de données suivant ( df1 code>): xxx pré>

et je souhaite insérer la colonne 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


0 commentaires

5 Réponses :


2
votes

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


0 commentaires

0
votes

supposant que le deuxième Dataframe avec Price2 est appelé df2 : xxx

Ça devrait fonctionner, laissez MEE savoir s'il n'a pas .


0 commentaires

0
votes

dplyr + zoo : xxx xxx


0 commentaires

1
votes

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


0 commentaires

0
votes

en utilisant couper . xxx


données: xxx


0 commentaires