Dir*_*tel 14
一般情况下,但您可以通过自己创建的对象来执行此操作
R> df <- data.frame(a=sample(LETTERS[1:5],10,TRUE),b=runif(10))
R> attr(df, "createdAt") <- Sys.time()
R> df
a b
1 B 0.8437021
2 D 0.8683446
3 B 0.5194791
4 B 0.0480405
5 B 0.5604978
6 C 0.1938154
7 A 0.1451077
8 D 0.1785405
9 C 0.3937795
10 B 0.2874135
R> str(df)
'data.frame': 10 obs. of 2 variables:
$ a: Factor w/ 4 levels "A","B","C","D": 2 4 2 2 2 3 1 4 3 2
$ b: num 0.844 0.868 0.519 0.048 0.56 ...
- attr(*, "createdAt")= POSIXct, format: "2011-03-16 10:42:10.137434"
R>
Run Code Online (Sandbox Code Playgroud)
然后你可以自己写一些使用该属性的自定义print()或show()函数.Frank Harrell的rms及其设计前身已经做了类似的事情很长一段时间了.
Spa*_*man 10
简答:不.
答案很好:是的,您需要做的就是重写R的C核心中的赋值代码,以便在每次更改对象时在某处存储日期戳.我尝试了一次,将数据存储在一个属性中,就像其他答案一样,但它有不同的副作用,使相同的对象不同.x = 1且y = 1具有不同的时间戳,因此相同的(x,y)为FALSE并且以宏伟的方式破坏了R的测试.我放弃.