pandas是一个dataseries和一个timeseries列的索引。在
我想遍历dataframe并创建一个新的dataframe,其中,对于每个cusip,我获取最新的可用数据。在
我尝试使用groupby:
newData = []
for group in df.groupby(df['CUSIP']):
newData.append(group[group.index == max(group.index)])
'builtin_function_or_method' object is not iterable
In [374]: df.head()
Out[374]:
CUSIP COLA COLB COLC
date
1992-05-08 AAA 238 4256 3.523346
1992-07-13 AAA 234 4677 3.485577
1992-12-12 BBB 221 5150 3.24
1995-12-12 BBB 254 5150 3.25
1997-12-12 BBB 245 6150 3.25
1998-12-12 CCC 234 5140 3.24145
1999-12-12 CCC 223 5120 3.65145
我想要:
^{pr2}$我应该换一种方法吗?非常感谢。在
整理一下
^{pr2}$从每组中取出最后一个元素
如果要保留日期索引,请先重置、分组,然后再将索引设置回原处
我是这样做的
将日期转换为日期时间
^{pr2}$按您需要的方式对数据帧进行排序
定义聚合时发生的情况(根据排序方式)
使dict对所有列应用相同的函数
最终聚集
编辑: 将日期转换为日期时间可避免此类错误:
相关问题 更多 >
编程相关推荐