Betrachten Sie das Beispiel, wo ich zwei Databases habe, df1
ist eine Kopie meiner Bestellung und SOH ist mein iventory. Ich mag die df1$price
in SOH
fusionieren, wobei:Merge zwei Tabellen nach einer bestimmten Regel
wenn SOH$arrival_year > df1$year
, dann den Preis schreibt mit dem ältesten Jahr verbunden ist, wenn nicht älter Jahr NA
erscheint schreiben, wenn der SOH
Artikel in df1
erscheinen tut, schreiben NA in Preis
supplier <- c(1,1,1,1,1,2,2)
item <- c(20,20,20,21,22,23,26)
year <- c(2000,2002,2008,2001,2007,2005,2009)
price <- c(.3,.4,.5,1.6,1.5,3.2,.25)
df1 <- data.frame(supplier, item, year, price)
#
supplier_on_hand <- c(1,1,1,1,1,1,2,2,3)
item_on_hand <- c(20,20,20,22,20,20,23,23,10)
arrival_year <- c(2000,2001,2002,2009,2007,2012,2006,2004,2009)
SOH <- data.frame(supplier_on_hand, item_on_hand, arrival_year)
Die folgende Ausgabe gewünscht wird:
Vielleicht 'merge (df1, df2, by.x = c (" Lieferant "," Jahr "), by.y = c (" Lieferant "," arrival_year "))'. – lmo