python 如何将时间输出为年月的形式
python 如何将时间输出为年月的形式
1、通过panda先生成时间序列,再转换
生成完成之后,再通过pd.to_datetime((time.data)).strftime(%Y-%m-%d %H:%M) 可以将时间序列转换为年、月、日、时、分,也可以生成年、月、日的形式,将上述代码改为pd.to_datetime((time.data)).strftime(%Y-%m-%d )即可。
实例代码如下:
import pandas as pd from datetime import datetime start = datetime(2021, 6, 1) end = datetime(2021, 6, 30,23) tm = pd.date_range(start, end, freq=H)#H表示小时hour time=pd.to_datetime((tm)).strftime(%Y-%m-%d)
结果如下所示:
2、通过读取nc文件中的时间,再转换
如下图所示,nc文件中时间格式如下, 想要将其转换为年月的格式输出 方法类似,先通过pandas.to_datetime()命令将时间转换为DatetimeIndex的格式,再通过strftime(%Y-%m-%d %H:%M)命令输出即可 示例代码如下:
import xarray as xr path=r"D://test.nc" da=xr.open_dataset(path).sel(lat=slice(-20,20),time=slice(1982,2018)) time=pd.to_datetime(da.time).strftime("%Y.%m").values
运行结果如下所示:
应用场景
-
1、绘图时需要添加标题,只想显示年、年月、年月日,可以通过上述命令转换完成后,再通过字符串str(time)直接添加到标题中. 如下图所示: 命令语句:
ax.set_title(scatterplot of different labels-+pd.to_datetime(da.time).strftime("%Y.%m").values[0], fontsize=20,pad=10)
-
2、进行文件输出时,作为标题使用,减少字符间隔