Function 使用带有Julia的DateTime函数的问题
当我在Jupyter笔记本中读取csv文件时,我得到以下输出Function 使用带有Julia的DateTime函数的问题,function,datetime,jupyter-notebook,julia,Function,Datetime,Jupyter Notebook,Julia,当我在Jupyter笔记本中读取csv文件时,我得到以下输出 54×9 Array{Any,2}: "\"25 Nov 2015\"" 28637 11314 3804 2536 10675 4808 14122 3955 "\"18 Nov 2015\"" 28634 11314 3804 2536 10672 4808 14122 3955 "\"11 Nov 2015\"" 28635 11314 3805 25
54×9 Array{Any,2}:
"\"25 Nov 2015\"" 28637 11314 3804 2536 10675 4808 14122 3955
"\"18 Nov 2015\"" 28634 11314 3804 2536 10672 4808 14122 3955
"\"11 Nov 2015\"" 28635 11314 3805 2536 10672 4808 14122 3955
"\"4 Nov 2015\"" 28607 11314 3810 2536 10672 4808 14089 3955
"\"25 Oct 2015\"" 28539 11298 3806 2535 10672 4808 14061 3955
⋮ ⋮
"\"12 May 2014\"" 260 182 248 171 12 11 "" ""
"\"1 May 2014\"" 239 160 226 149 13 11 "" ""
"\"14 Apr 2014\"" 176 110 168 108 8 2 "" ""
"\"31 Mar 2014\"" 130 82 122 80 8 2 "" ""
"\"22 Mar 2014\"" 49 29 49 29 "" "" "" ""
我想将第一列内容更改为日-月-年格式,以便计算自第一次观察以来经过的年份(在本例中,这是我的最后一行)
我尝试使用字符串转换列,然后使用for循环(假设我的文件名为“ebola”)
之后,我收到了这个错误消息
ArgumentError: Unable to parse date time. Expected directive DatePart(d) at char 1
我认为出现此错误是因为字符串有一种非常规的格式来处理它,带有四个“”符号和一些反斜杠:
"\"25 Nov 2015\""
我必须在键入时添加,例如:
length("\"22 Mar 2014\"")
当你能数出17个字符时,结果是13个字符,所以反斜杠显然在制造一些“噪音”
为了执行我想要执行的任务,我可以通过什么方法将字符串转换为正确的格式?
任何帮助都将不胜感激。原因是“\”2014年3月22日\
是一个包含“
字符的字符串。您可以通过打印来检查它:
julia> s = "\"22 Mar 2014\""
"\"22 Mar 2014\""
julia> print(s)
"22 Mar 2014"
要分析日期,请使用适当的格式字符串,例如:
julia> Date(s,"\"d u y\"")
2014-03-22
以下是如何从阵列执行转换:
julia> x = ["\"25 Nov 2015\"" 28637 11314 3804 2536 10675 4808 14122 3955
"\"18 Nov 2015\"" 28634 11314 3804 2536 10672 4808 14122 3955
"\"11 Nov 2015\"" 28635 11314 3805 2536 10672 4808 14122 3955
"\"4 Nov 2015\"" 28607 11314 3810 2536 10672 4808 14089 3955
"\"25 Oct 2015\"" 28539 11298 3806 2535 10672 4808 14061 3955]
5×9 Array{Any,2}:
"\"25 Nov 2015\"" 28637 11314 3804 2536 10675 4808 14122 3955
"\"18 Nov 2015\"" 28634 11314 3804 2536 10672 4808 14122 3955
"\"11 Nov 2015\"" 28635 11314 3805 2536 10672 4808 14122 3955
"\"4 Nov 2015\"" 28607 11314 3810 2536 10672 4808 14089 3955
"\"25 Oct 2015\"" 28539 11298 3806 2535 10672 4808 14061 3955
julia> Date.(x[:,1], "\"d u y\"")
5-element Array{Date,1}:
2015-11-25
2015-11-18
2015-11-11
2015-11-04
2015-10-25
julia> x = ["\"25 Nov 2015\"" 28637 11314 3804 2536 10675 4808 14122 3955
"\"18 Nov 2015\"" 28634 11314 3804 2536 10672 4808 14122 3955
"\"11 Nov 2015\"" 28635 11314 3805 2536 10672 4808 14122 3955
"\"4 Nov 2015\"" 28607 11314 3810 2536 10672 4808 14089 3955
"\"25 Oct 2015\"" 28539 11298 3806 2535 10672 4808 14061 3955]
5×9 Array{Any,2}:
"\"25 Nov 2015\"" 28637 11314 3804 2536 10675 4808 14122 3955
"\"18 Nov 2015\"" 28634 11314 3804 2536 10672 4808 14122 3955
"\"11 Nov 2015\"" 28635 11314 3805 2536 10672 4808 14122 3955
"\"4 Nov 2015\"" 28607 11314 3810 2536 10672 4808 14089 3955
"\"25 Oct 2015\"" 28539 11298 3806 2535 10672 4808 14061 3955
julia> Date.(x[:,1], "\"d u y\"")
5-element Array{Date,1}:
2015-11-25
2015-11-18
2015-11-11
2015-11-04
2015-10-25