Python 条件重采样以获得月平均值
我有一个包含4列和大约2000行的df 前两列是第0个月的小数点和第12个月的小数点,第三列是数值,第四列是日期 我想得到的是月平均值 例如,如果第1列=1,第2列=2,则得到具有相同小数点的所有股票的月平均值。 但不幸的是我得到了空白 我的代码Python 条件重采样以获得月平均值,python,for-loop,conditional,Python,For Loop,Conditional,我有一个包含4列和大约2000行的df 前两列是第0个月的小数点和第12个月的小数点,第三列是数值,第四列是日期 我想得到的是月平均值 例如,如果第1列=1,第2列=2,则得到具有相同小数点的所有股票的月平均值。 但不幸的是我得到了空白 我的代码 for i in Labels=list(range(1,11): for j in Labels=list(range(1,11): dec2=dec2.loc[(dec2[decileT0
for i in Labels=list(range(1,11):
for j in Labels=list(range(1,11):
dec2=dec2.loc[(dec2[decileT0]==i)&(dec2[decileT12]==j)]
dec2.value.resample('M', on='DATEID').mean()
数据样本
decileT0 decileT12 value DATEID
6 6 -0.097774341 31/03/2006
4 5 -0.096971416 28/02/2006
1 2 -0.096923155 31/07/2006
6 6 -0.096895966 30/09/2007
我不确定这是否是问题所在,但您的代码中缺少了一些括号。它甚至可以编译吗 我把括号放在下面:
for i in Labels=list(range(1,11)):
for j in Labels=list(range(1,11)):
dec2=dec2.loc[ ( dec2[decileT0] == i ) & ( dec2[decileT12] == j ) ]
dec2.value.resample('M', on='DATEID').mean()
抱歉,victor,在发布之前,我没有真正运行simplified,范围在一个函数中,所以类似这样的东西我已经运行过了,我在完整的代码中得到了相同的错误
Labels = list(range(1,11))
for i in Labels:
for j in Labels:
dec3=dec2.loc[(dec2['decileT0']==i)&(dec2['decileT12']==j)]
dec3.value.resample('M', on='DATEID').mean()
谢谢,维克多,对不起,是的,我错过了复制代码的机会,但不幸的是,这不是问题所在。当我试图编译你的代码时,我得到了编译错误。你确定它正在编译吗?我从来没有在python中见过这样的for循环。修复它我不得不将新列表重命名为dec3,因为我正在修改源代码系列