2
我有一個包含月度回報和相應月份的數據框。根據列名和行名合併數據框,創建條件列
Data <- read.csv("C:/Users/h/Desktop/overflow.csv", sep=";", dec=",")
Data$Date <- as.Date(as.character(Data$Date), format="%Y-%m-%d")
的數據幀現在看起來是這樣的:
> Data
Fund.A Fund.B Fund.C Fund.D
2012-01-01 -0.01 0.04 0.11 0.10
2012-02-01 -0.04 -0.06 0.08 0.11
2012-03-01 -0.04 -0.07 0.15 -0.03
2012-04-01 0.00 -0.08 -0.04 0.13
2012-05-01 -0.07 0.10 0.06 0.02
2012-06-01 -0.05 0.06 0.06 -0.02
2012-07-01 0.12 -0.06 -0.09 -0.06
2012-08-01 0.08 -0.03 0.05 0.13
2012-09-01 0.10 0.07 -0.02 0.15
2012-10-01 -0.08 0.14 0.00 -0.04
2012-11-01 -0.09 0.11 -0.07 0.12
2012-12-01 -0.01 -0.09 0.07 -0.02
現在我想繼續與新的收益時間序列,從一個新的CSV,通過簡單地匹配,在合適的基金新的回報「數據」。我的問題是新資產可能已被添加,搞亂了訂單。
import <- read.csv("C:/Users/h/Desktop/import.csv", sep=";", dec=",")
import
2013-01-01
1 Funds: NA
2 Fund A 0.04
3 Fund AA -0.09
4 Fund C -0.10
5 Fund D 0.03
6 Fund B 0.14
正如你所看到的,「進口」的csv在「數據」看到新資產(基金AA)以及資產(基金到d),其中資金是行而不是列。我如何編寫一個代碼,它匹配並添加一行到「數據」,其中「導入」中的值位於「數據」中的右列(基金)下方?如果新資產已添加,爲新資產創建一列?
作爲獎勵,如果「導入」中的日期比「數據」中最近的日期更新,代碼將只添加一行。只導入新的退貨。
欣賞它!