Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 重新访问变量X的无效类型(列表),其中X是日期类_R - Fatal编程技术网

R 重新访问变量X的无效类型(列表),其中X是日期类

R 重新访问变量X的无效类型(列表),其中X是日期类,r,R,今天早些时候,我遵循下面的线索,看到它的答案,但答案对我来说并不适用 海报上展示了以下数据 Values;Date.Col 911;20/12/2013 04:05:01 p.m. 124,82;23/12/2013 09:43:03 a.m. 287;23/12/2013 09:44:15 a.m. 37,3;23/12/2013 09:45:26 a.m. 448,4;23/12/2013 09:46:50 a.m. 432,5;23/12/2013 09:48:31 a.m. 我将数据复

今天早些时候,我遵循下面的线索,看到它的答案,但答案对我来说并不适用

海报上展示了以下数据

Values;Date.Col
911;20/12/2013 04:05:01 p.m.
124,82;23/12/2013 09:43:03 a.m.
287;23/12/2013 09:44:15 a.m.
37,3;23/12/2013 09:45:26 a.m.
448,4;23/12/2013 09:46:50 a.m.
432,5;23/12/2013 09:48:31 a.m.
我将数据复制到gedit中,并将其保存为tmp.csv

然后我应用了原始帖子中的回答代码

df <- read.table("tmp.csv", header = T, dec = ',', sep = ';')
df$Date.Col <- as.POSIXct(df$Date.Col, format = "%d/%m/%Y %I:%M:%S %p")
plot(Values ~ Date.Col, df[-1,], type = 'l')
为什么它适用于原始海报,但不适用于我

其他注释,当我运行代码的第一行时,我得到str(df)


当然,stringsAsFactors=FALSE会去除这些因素,但代码仍然不起作用(第二行用NA值填充df$Date.Col。

多亏了@MrFlick,我才有了这个问题的答案。他解释说%p格式是特定于语言环境的。为了让代码正常工作,我需要通过删除从上午到下午的时间段来整理数据(这是我亲手做的)

我保存了如上所述的数据,并使用了相同的代码,这一次起到了作用(有关更多详细信息,请参阅上面的注释)


ps问题由self回答,只是为了关闭它。

你的
sessionInfo()
?具体来说,
%p
格式是特定于区域设置的。如果
as.POSIXct(“20/12/2013 04:05:01 p.m.”,格式=“%d/%m/%Y%I:%S%p”)
不起作用,请尝试
as.POSIXct(“20/12/2013 04:05:01 pm”,格式=“%d/%m/%Y%I:%m:%S%p”)
。请注意,如何将句点设置为“p.m.”而将句点设置为“p.m.”。在运行数据之前,您需要对数据进行清理,通过
as.POSIXct
确保日期在您的区域设置中有效。sessionInfo()R版本3.1.2(2014-10-31)平台:x86_64-pc-linux-gnu(64位)区域设置:[1]LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C LC_TIME=en_GB.UTF-8 LC_COLLATE=en_GB.UTF-8[5]LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8 LC_PAPER=en_GB.UTF-8 LC_NAME=C[9]LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C附加的基本包:[1]统计图形grDevices utils数据集方法通过命名空间加载(未附加):[1]工具3.1。2@MrFlick您对其进行了排序。谢谢。我如何知道%p是否在本地运行而不会崩溃?老实说,不同操作系统之间的区域设置内容非常混乱,因此我不确定如何知道不进行测试就可以工作。您可以阅读
?strtime
中的描述,其中记录了格式字符串语法。但是其他呃,我不知道该推荐什么。我在今天早些时候的问题中没有提到吗?;-)@Richard今天早些时候我没有问这个问题,我只是想弄清楚为什么代码对最初的OP有效,而不是我!我按照上面的链接,但我看不出你是否提到了它…?此外,如果你提到了,我显然错过了。我的错,我认为是你。我还想知道为什么它对我有效我的评论被删除了,因为有人说这是错误的,但显然不是…@Richard我试图寻找你的评论,但我只能在最初的评论写道时看到它的踪迹,“当然,我不必在下午的某个回复中去掉点。”。(我在那个帖子中的评论是关于StringsAsafactors顺便说一句)@RichardScriven,我确实记得你的评论,idk那里发生了什么,但没有必要删除它。顺便说一句,我的语言环境是
LC\u TIME=Spanish\u乌拉圭.1252
Error in plot.window(...) : need finite 'xlim' values
In addition: Warning messages:
1: In min(x) : no non-missing arguments to min; returning Inf
2: In max(x) : no non-missing arguments to max; returning -Inf
str(df)
'data.frame':   6 obs. of  2 variables:
 $ Values  : num  911 124.8 287 37.3 448.4 ...
 $ Date.Col: Factor w/ 6 levels "20/12/2013 04:05:01 p.m.",..: 1 2 3 4 5 6
Values;Date.Col
911;20/12/2013 04:05:01 pm
124,82;23/12/2013 09:43:03 am
287;23/12/2013 09:44:15 am
37,3;23/12/2013 09:45:26 am
448,4;23/12/2013 09:46:50 am
432,5;23/12/2013 09:48:31 am