Python 在熊猫中获取特定年份创建的许多项目

Python 在熊猫中获取特定年份创建的许多项目,python,python-3.x,pandas,Python,Python 3.x,Pandas,我正在编写一个函数,该函数返回在熊猫数据框中特定年份创建的若干项,其中搜索在列['çreation']中进行,该列的格式为2015-05-11: def do_获得每年的引用(数据,年份): 结果=元组() 引文=列表() 对于索引,my_ocan.iterrows()中的行: my_ocan['creation']=pd.DatetimeIndex(my_ocan['creation']).year #打印(my_ocan[“创建]) 如果行['creation']==年份: 引用。追加(第[

我正在编写一个函数,该函数返回在熊猫数据框中特定年份创建的若干项,其中搜索在列['çreation']中进行,该列的格式为2015-05-11:

def do_获得每年的引用(数据,年份):
结果=元组()
引文=列表()
对于索引,my_ocan.iterrows()中的行:
my_ocan['creation']=pd.DatetimeIndex(my_ocan['creation']).year
#打印(my_ocan[“创建])
如果行['creation']==年份:
引用。追加(第[‘创建’]行)
len_引文=len(引文)
结果=(len_引文)
返回结果
当我运行我的函数
print(我的ocan.get\u引文/u/年(2015))
时,我得到0,但2015年创建了一些项目

有什么问题吗

谢谢你,祝你有一个美好的一天

试试看:

def do_获得每年的引用(数据,年份):
结果=元组()
引文=列表()
my_ocan['creation']=pd.DatetimeIndex(my_ocan['creation']).year
对于索引,my_ocan.iterrows()中的行:
#打印(my_ocan[“创建])
如果行['creation']==年份:
引用。追加(第[‘创建’]行)
len_引文=len(引文)
结果=(len_引文)
返回结果
或者,我想这会给你你想要的:

def do_获得每年的引用(数据,年份):
结果=元组()
my_ocan['creation']=pd.DatetimeIndex(my_ocan['creation']).year
len_引文=len(my_ocan.loc[my_ocan[“创建”]=年份,“创建”])
结果=(len_引文)
返回结果
(您不必遍历所有行,只需使用
.loc[,]