0
我輸入一個帶頭的Excel CSV並使用str(returns.xts)
進行檢查。以下代碼在xts
內生成字符值。使用某些字符從「.csv」生成數字的xts「#N/A」
file <- "~/GCS/returns_Q216.csv"
returns_Q216_ <- read.csv(file=file)
returns <- read.zoo(data.frame(returns_Q216_), FUN = as.Date, format='%d/%m/%Y')
returns.xts <- as.xts(returns)
在保留xts(和日期列)的同時將xts內容轉換爲數字的最佳方法是什麼?
> `str(returns)`
An ‘xts’ object on 2007-01-31/2015-05-31 containing:
Data: `chr` [1:101, 1:18] "-0.002535663" "-0.001687755" "0.032882512" "0.024199512" "0.027812955" ...
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr [1:18] "UK.EQUITY" "EUR.EQUITY" "NA.EQUITY" "ASIA.EQUITY" ...
Indexed by objects of class: [Date] TZ: UTC
xts Attributes:
NULL
> returns[8,9]
PROPERTY
2007-08-31 "-4.25063E-05"
當我嘗試as.numeric(returns.xts)
我得到一個1x1的結構單元沒有日期的行。
> str(as.numeric(returns))
num [1:1818] -0.00254 -0.00169 0.03288 0.0242 0.02781 ...
你能嘗試:'returns_Q216_ < - read.csv(文件=文件,colClasses = C( 「人物」,代表( 「數字」,N)),stringsAsFactors = FALSE); returns_xts = XTS( returns_Q216 _ [ - 1],order.by = as.Date(returns_Q216 _ [1], 「%d /%米/%Y」))'。用文件中的數字列數替換N – OdeToMyFiddle
是的。 129之後的行填充了來自彭博缺失值(未來日期)的「#N/A」。數字失敗。有沒有辦法,這些可以變成R'NA',同時作爲.numeric()或ColClasses「數字」仍然可以強制xts數據爲num? – rrg
我知道將一個'matrix'轉換爲'data.frame'使得由無效數字條目引起的引號消失,但是有沒有一種方法可以創建一個動物園,因爲存在無效數據(可能被NA代替)。 – rrg