两种方法修改CSV文件里数据的日期格式 python 和 excel

如何修改CSV文件里的日期格式

前几天做时序预测,数据是 m/d/yyyy 格式的,但是pandas不认这种日期格式。于是就想用python写个脚本一起改了。

方法一:

略微冲了一下浪,找到了Dataframe的增删改查的方法。‘date’ 是列名。

import pandas as pd

data = pd.read_csv("Dataset_Finished.csv",header=0)

import datetime

data.loc[:,'date'] = pd.to_datetime(data.loc[:,'date'], format='%m/%d/%Y', errors='coerce')

data.to_csv('change.csv')

修改成功,但是我想打开excel修改个别数据的时候发现日期格式又变回原来的%m/%d/%Y。一阵冲浪后发现,excel自动会把日期的变量转换为windows默认日期格式,就是windows右下角的日期格式。
所以,即使数据只有 ‘10:00 AM’,windows也会自动补齐年月日,变成1/0/1900 10:00:00 AM。

我心想excel这么智能,都能给我自己改回来。那肯定有办法直接改日期格式。

方法二:

在excel或wps里选中所需数据,我这里是ob_time一整列。
在这里插入图片描述
右键 ‘设置单元格格式’ 或 ‘Format cells‘
在这里插入图片描述
数字里有日期选项,但是格式都不伦不类,与我无用。点击自定义。

在这里插入图片描述
输入自己想要的数据格式,比如我用的是 yyyy/mm/dd hh:mm,点击确定。

在这里插入图片描述
可以看到日期格式修改了,虽然格子里原来的数据还在。
保存后在编辑器里读取是修改后的数据。
至此,问题解决。
唯一问题就是,如果你再次在excel里打开csv文件,日期格式又会回到windows默认格式。