mf是一个dataframe,amt是成交额,code是代号,计算近5日的总成交额
下面的代码会报cannot handle a non-unique multi-index!
chatgpt、文心一言、讯飞星火都解决不了
mf["amt_sum_5"] = mf.groupby(by="code")['amt'].rolling(5).apply(sum)
解决办法:
找一个小的dataframe跑一下这个逻辑,发现apply返回的结果是一个multiindex的dataframe,所以无法被赋值到amt_sum_5这个新列上。改成下面这个就好了:
mf["amt_sum_5"] = mf.groupby(by="code")['amt'].rolling(5).apply(sum).values
看来,AI还需要再改进~