クラスを持つデータSPLUS
をtimeSpan
クラスを持つデータに変換しようとしています。パッケージを調べましたが、それを行う方法が見つかりませんでした。クラスを検出できないため、データで変数を作成しようとするとエラーが発生します。R
POSIXlt
lubridate
R
timeSpan
パッケージのlubridate
ヘルプ ファイル?'lubridate-package'
には、
Lubridate は、時間内の瞬間 (インスタントと呼ばれます) と時間のスパン (タイムスパンと呼ばれます。Timespan クラスを参照) を区別します。タイム スパンは、さらに Duration クラス、Period クラス、および Interval クラスのオブジェクトに分けられます。
また、パッケージ開発者が書いたこの記事からヘルプを探しましlubridate
たが、解決する方法が見つかりませんでした。timeSpan
のクラスを のクラスSPLUS
にposixlt
変換することは可能R
ですか?
S-PLUS データ:
"span" = new("timeSpan", .Data = list(c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7,
7, 30, 30, 91, 91, 365, 1826, 9131, 36525),
c(1, 1, 2, 5, 10, 25, 50, 100, 250, 500, 1000, 5000, 15000, 60000, 60000,
300000, 300000, 900000, 900000, 3600000, 10800000, 10800000, 21600000,
0, 0, 0, 37800000, 37800000, 27000000, 27000000, 21600000, 21600000,
21600000, 0)),
.Data.names = c("julian.day", "milliseconds"),
.Data.classes = new("CLASS",c("integer", "integer")),
format = "%dd %Hh %Mm %Ss %NMS")
SPLUS ワークベンチでの評価後のデータの外観:
span
[1] 0d 0h 0m 0s 1MS 0d 0h 0m 0s 1MS 0d 0h 0m 0s 2MS
[4] 0d 0h 0m 0s 5MS 0d 0h 0m 0s 10MS 0d 0h 0m 0s 25MS
[7] 0d 0h 0m 0s 50MS 0d 0h 0m 0s 100MS 0d 0h 0m 0s 250MS
[10] 0d 0h 0m 0s 500MS 0d 0h 0m 1s 0MS 0d 0h 0m 5s 0MS
[13] 0d 0h 0m 15s 0MS 0d 0h 1m 0s 0MS 0d 0h 1m 0s 0MS
[16] 0d 0h 5m 0s 0MS 0d 0h 5m 0s 0MS 0d 0h 15m 0s 0MS
[19] 0d 0h 15m 0s 0MS 0d 1h 0m 0s 0MS 0d 3h 0m 0s 0MS
[22] 0d 3h 0m 0s 0MS 0d 6h 0m 0s 0MS 1d 0h 0m 0s 0MS
[25] 7d 0h 0m 0s 0MS 7d 0h 0m 0s 0MS 30d 10h 30m 0s 0MS
[28] 30d 10h 30m 0s 0MS 91d 7h 30m 0s 0MS 91d 7h 30m 0s 0MS
[31] 365d 6h 0m 0s 0MS 1826d 6h 0m 0s 0MS 9131d 6h 0m 0s 0MS
[34] 36525d 0h 0m 0s 0MS
R コンソールのエラー:
Error in getClass(Class, where = topenv(parent.frame())) :
“timeSpan” is not a defined class