2

POSIXctエントリを持つffベクトルを、原点 01-01-1970 からのそれぞれの秒数を含むff数値ベクトルに変換しようとしています。

x = as.ff(as.POSIXct(c("2014-06-30 00:01:27 BST", "2014-06-30 00:02:17 BST")))

「自然」as.numeric(x)は機能せず、次のようになりnumeric(0)ます。

as.ff(as.numeric(x[]))働く、降伏する

ff (open) double length=2 (2) [1] [2] 1398898887 1398898937

これは望ましい結果です。とはいえ、これには ram オブジェクトが含まれますx[]。ff オブジェクトのみを使用して上記の結果を達成する方法はありますか (つまり、ff ベクトルに相当する ram を仲介しません)?

4

1 に答える 1

0
require(ff)
x = as.ff(as.POSIXct(c("2014-06-30 00:01:27 BST", "2014-06-30 00:02:17 BST")))
## Either clone it (creates a duplicate of the ff file)
done <- clone(x, ramclass = "numeric", ramattribs = list())
done[]
[1] 1404079287 1404079337
attr(,"class")
[1] "numeric"

## Or just modify the ramclass and ramattribs (see ?virtual: virtual(x))
virtual(x)$ramclass <- NULL
virtual(x)$ramattribs <- NULL
x[]
[1] 1404079287 1404079337

## And wrap this up in your own function
于 2014-06-30T12:13:39.210 に答える