所以我有几百个文件需要运行python脚本。所有文件都是Excel CSV' s。一切都在运行,除了日期。当我使用pd.read_csv将csv转换为数据帧时,原始日期将转换为其他格式。
当我阅读CSV时,我用斜线区分日期值,例如只有' /'将是约会。但是,由于我的数据正在转换,我的斜杠将转换为破折号(' - ')或日期格式更改为其他内容。
以下是一些示例数据:
csv_df = pd.read_csv(csv,keep_default_na=False, index_col=False, parse_dates=False, dtype=basestring)
Original Pandas Conversion Original 2 Pandas Conversion 2
1/1/1900 0:00 1900/01/01 00:00:00 6/2/2017 2017-06-02
1/1/1900 0:00 1900/01/01 00:00:00 6/2/2017 2017-06-02
1/1/1900 0:00 1900/01/01 00:00:00 12/13/2016 2016-12-13
1/1/1900 0:00 1900/01/01 00:00:00 12/13/2016 2016-12-13
1/1/1900 0:00 1900/01/01 00:00:00 5/24/2017 2017-05-24
1/1/1900 0:00 1900/01/01 00:00:00 5/24/2017 2017-05-24
我尝试将dtype更改为object,但没有修复。 parse_dates参数为false,因此也不应该如此。我相信Excel会自动更改日期,但我不知道该怎么做。我也无法准确指定列,因为所有CSV都包含不同的数据。对此问题的任何建议或帮助将不胜感激。
答案 0 :(得分:0)
我有同样的问题。无法真正找出实际的解决方案。
但是,我要做的是在日期列中再添加一行并添加一些随机文本,然后读取文件。然后它会正确读取格式。
稍后,我删除了该行以及所有随后的空行,然后再次读取。当时效果很好。猜猜它与文件的编码有关。