文章目录提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
- 前言
- 一、pands.DataFrame如何应用与构建时间序列?
- 二、使用步骤
- 1.代码示例及相关结果
- 2.时间序列创造
- 总结
前言
cesm1_2_2模式跑出的月数据第一年是从2月1日开始的,因此我们需要对于其变量的时间序列进行更改。利用pands.DataFrame函数生成新的时间序列,并让其变为变量的新的时间属性。
提示:以下是本篇文章正文内容,下面案例可供参考
一、pands.DataFrame如何应用与构建时间序列?pands.DataFrame与pandas.Series相似,可以按照位置或坐标进行索引和切片。利用pandas支持的日期时间频率,我们可以按照自己的要求构建出相应的时间序列。
| 日期时间频率缩写 | 说明 |
|---|---|
| D | 一天 |
| B | 一个工作日 |
| T | 一分钟 |
| S | 一秒 |
| H | 一小时 |
| W-MON,W-TUE | 以周一、二开始的一周 |
| M | 一月的月末 |
| MS | 一月的月初 |
| A-JAN,A-FEB | 以一月末、二月末开始的一年 |
| AS-JAN,AS-FEB | 以一月初、二月初开始的一年 |
代码如下(示例):
#修改nc文件中的时间属性 import xarray as xr import numpy as np #import datetime as dt import matplotlib.pyplot as plt import matplotlib import pandas as pd mf_path = 'E:/气候数值模拟/' mf1=xr.open_mfdataset(mf_path + 'control/*.nc') tsc=mf1['TS'] - 273.15 lat=tsc.lat lon=tsc.lon time1=mf1['time'] print(tsc)
print(time1)
从上图看出源文件是从2月1日开始的,要想进行带时间索引的时间处理,则需要对时间序列进行相关处理。
代码如下(示例):
time = pd.date_range(start="19850101", end="19941231", freq="MS") time
'给array赋值属性' tsc = xr.DataArray(tsc, coords=[time,lat,lon], dims=['time','lat','lon']) tsc.time
总结
通过上述操作可以对变量的时间属性进行新的赋值。还可以参考表格中的内容构建不同的时间序列以及,别的属性如:经纬度等。



