Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在数据框中选择几年_Python_Pandas_Dataframe_Subset - Fatal编程技术网

Python 在数据框中选择几年

Python 在数据框中选择几年,python,pandas,dataframe,subset,Python,Pandas,Dataframe,Subset,我试图从每月分辨率的数据帧中选择几年 import numpy as np import matplotlib.pyplot as plt import pandas as pd import netCDF4 as nc #-- open net-cdf and read in variables data = nc.Dataset('test.nc') time = nc.num2date(data.variables['Time'][:], data

我试图从每月分辨率的数据帧中选择几年

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import netCDF4 as nc

#-- open net-cdf and read in variables
data = nc.Dataset('test.nc')

time = nc.num2date(data.variables['Time'][:],
                   data.variables['Time'].units)

df = pd.DataFrame(data.variables['mgpp'][:,0,0], columns=['mgpp'])

df['dates'] = time
df = df.set_index('dates')
print(df.head())
这是头部的样子:

                mgpp
dates               
1901-01-01  0.040735
1901-02-01  0.041172
1901-03-01  0.053889
1901-04-01  0.066906
现在我设法抽出一年的时间:

df_cp = df[df.index.year == 2001]

但我如何提取几年,比如1997年、2001年和2007年,并将它们存储在同一个数据帧中?是否有一条/两条线的解决方案?我现在唯一的想法是迭代,然后合并数据帧,但也许有更好的解决方案

df[df.index.year.isin([1997,2001,2007])]
谢谢!这就是我想要的
df[df.index.year.isin([1997,2001,2007])
谢谢!这就是我要找的