• R语言
  • RODBC读不懂1974-4-1和1975-4-1?

sqlServer 2000

R 2.92



遇到日期为1974-4-1和1975-4-1的,sqlQuery读成空值,其它日期正常读取。

改过sql数据表,有问题的记录,改个日期就能读取。

原本没问题的记录,日期改到这两个盲点,就不行。

很奇怪,很莫名,盼指教。
2 年 后

确实很奇怪,在R中这两个怎么不能转换呢!刚刚在difftime("2009-12-31","1974-4-1")时遇到相同的问题

回复 第3楼 的 nan.xiao:也可能因为这两天是——呃,世界癫痫病日。

说正经的,改天生成一个百年日期向量测试一下。

蛮怪~~

<br />
> difftime("2009-12-31","1975-4-1")<br />
错误于as.POSIXlt.character(x, tz, ...) : 字符串的格式不够标准明确</p>
<p>> strptime('1975-4-1','%Y-%m-%d')<br />
[1] "1975-04-01"<br />
> difftime("2009-12-31",strptime('1975-4-1','%Y-%m-%d'))<br />
Time difference of NA secs
</p>

确实很奇怪,求高手解释解释

Ubuntu 10.10 32-bit + R 2.13.0

<br />
> difftime("2009-12-31","1975-4-1")<br />
Time difference of 12693 days<br />
> strptime('1975-4-1','%Y-%m-%d')<br />
[1] "1975-04-01"<br />
> difftime("2009-12-31",strptime('1975-4-1','%Y-%m-%d'))<br />
Time difference of 12693 days<br />
</p>

> difftime("2009-12-31",as.Date('1975-4-1'))<br />
Time difference of 12692.67 days
</p>