将EXCEL表格中的“YY-MM-DD”转换成DOY或者将DOY转换成“YY-MM-DD”。
import datetime
import pandas as pd
from datetime import datetime
# 读取表格数据
df = pd.read_excel(r'F:\Solar_Radiance\BSRN_SSR\Factor_Extraction_data\54221_interpolation.xlsx')
# 将日期列转换为日期对象,并转换为DOY格式的字符串
#doy_list = []
NYR_list = []
for date_str in df['Date']:
#年月日转DOY
# date_obj = datetime.datetime.strptime(date_str, '%Y-%m-%d')
# doy_str = date_obj.strftime('%j')
# year_str = date_obj.strftime('%Y')
# doy_list.append(year_str + doy_str)
#DOY转年月日
date_obj = datetime.strptime(str(date_str), '%Y%j') # 将字符串转换成datetime对象
date_formatted = date_obj.strftime('%Y-%m-%d') # 将datetime对象转换成字符串,格式为“YYYY-MM-DD”
NYR_list.append(date_formatted)
# 获取要删除的列索引
column_index = df.columns.get_loc('Date')
# 使用drop方法删除列
df.drop(df.columns[column_index], axis=1, inplace=True)
# 将新的日期列添加到表格中
df['Date'] = NYR_list
# 保存表格数据
df.to_excel(r'F:\Solar_Radiance\BSRN_SSR\Factor_Extraction_data\54221_interpolation_NYR.xlsx', index=False)