如何导入「M-d-y h:m」格式时间数据并解决无效时间格式报错
报错原因
你指定的时间格式字符串和CSV中实际存储的时间格式存在两处不匹配:
- 格式字符串中使用
-作为日期分隔符,但实际数据的日期部分采用/作为分隔符 - 格式字符串中多写了秒的占位符
:s,但实际数据的时间仅包含「时:分」,没有秒字段
解决方法
直接修改schema中datetime字段对应的格式字符串为匹配实际数据的M/d/y H:m即可,修改后完整代码如下:
schemaTB = extractTextSchema(csvFile) update schemaTB set type="DATETIME" where name="datetime" schemaTB[`format]=["M/d/y H:m",,,]; t = loadText(csvFile,,schemaTB)
备选方案
如果修改schema后仍然有适配问题,也可以先把时间字段按字符串类型导入,再手动转换为DATETIME格式:
schemaTB = extractTextSchema(csvFile) t = loadText(csvFile,,schemaTB) t.replaceColumn!(`datetime, temporalParse(t.datetime, "M/d/y H:m"))
内容的提问来源于stack exchange,提问作者winnie
相关产品推荐
相关产品推荐

