首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在重采样后使用dataframe.last()时,如何通过原始序列输出最后一个元素?

在重采样后使用dataframe.last()时,如何通过原始序列输出最后一个元素?
EN

Stack Overflow用户
提问于 2022-02-16 06:37:57
回答 1查看 23关注 0票数 0

我有如下所示的数据格式,并正在进行重采样:

代码语言:javascript
运行
复制
df = pd.DataFrame([1, 2, 3, 4, 5], index=[datetime(2021, 3, 2, hour=11),
                                           datetime(2021, 3, 2, hour=12),
                                           datetime(2021, 3, 2, hour=13),
                                           datetime(2021, 3, 2, hour=1),
                                           datetime(2021, 3, 2, hour=2)])

r= df.resample('1D')
print(r.first())
print(r.last())

结果是

代码语言:javascript
运行
复制
            0
2021-03-02  4
            0
2021-03-02  3

现在,我需要r.first()datetime(2021, 3, 2, hour=11):1r.last()datetime(2021, 3, 2, hour=2):5,如原始序列所示,但不需要排序后的结果。这是如何取得的呢?

EN

回答 1

Stack Overflow用户

发布于 2022-02-16 06:40:51

为了防止排序,可以使用带日期的groupby

代码语言:javascript
运行
复制
r= df.groupby(df.index.date)
print(r.first())
print(r.last())
            0
2021-03-02  1
            0
2021-03-02  5
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71137335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档