Python DataFrame时间格式转换失败
将 列2015-04-07 08:35:00 转化为2015-04-07
代码如下,预览的print是成功的,但是写进Excel文件之后还是原来的
from pathlib import Path
import pandas as pd
import openpyxl # 打开表格
import datetime
from openpyxl import load_workbook
input_path = Path("D:\Pycharm\pythonTest\File") # 当前目录下的文件夹,可以直接输入文件夹名字,可以忽略以往的一长串路径
output_path = Path("D:\Pycharm\pythonTest\File") # 输入输出文件的路径如果相同,会是一个坑!文字有解释#
input_files = sorted(Path(input_path).glob("*.xlsx")) # 调取出所有xlsx为结尾的文件
# df = []
i = 0
for file in input_files:
df = pd.read_excel(file,
converters={"CLIENT_ID": str, "ORG_USCC": str, "REGNO": str, "GRID_UNIT_ID": str, "GRID_ID": str,"TEL": str, "GRIDUNIT_CYY_ID": str,
"REGISTER_DATE": str, "FOUND_DATE": str, "CREATE_DATE": str, "STATUS_DATE": str, "UPDATE_DATE": str})
# print(df["REGISTER_DATE"])
df['REGISTER_DATE'] = df.REGISTER_DATE.str.slice(0, 11)
df['REGISTER_DATE'] = pd.to_datetime(df.REGISTER_DATE, dayfirst=True)
df['FOUND_DATE'] = df.FOUND_DATE.str.slice(0, 11)
df['FOUND_DATE'] = pd.to_datetime(df.FOUND_DATE, dayfirst=True)
df['CREATE_DATE'] = df.CREATE_DATE.str.slice(0, 11)
df['CREATE_DATE'] = pd.to_datetime(df.CREATE_DATE, dayfirst=True)
df['STATUS_DATE'] = df.STATUS_DATE.str.slice(0, 11)
df['STATUS_DATE'] = pd.to_datetime(df.STATUS_DATE, dayfirst=True)
df['UPDATE_DATE'] = df.UPDATE_DATE.str.slice(0, 11)
df['UPDATE_DATE'] = pd.to_datetime(df.UPDATE_DATE, dayfirst=True)
# pd.set_option('display.max_columns', None)
# print(df.head())
# print(df['REGISTER_DATE'])
df.to_excel(str(i) + '.xlsx', index=False) # 如果不需要显示序列号,则index为False
i = i + 1