python - Python Pandas Datetime 每天循环
问题描述
我的 pd 的一个简单示例是:
DateTime C_CL C_EB
2018-01-03 10:30 -0.002726 -0.002921
2018-01-03 10:50 -0.005832 -0.005343
2018-01-03 11:10 -0.006966 -0.007278
2018-01-03 11:30 -0.01883 -0.019026
2018-01-04 10:30 -0.0021 -0.001261
2018-01-04 10:50 0.006887 0.00595
2018-01-04 11:10 -0.00076 -0.000717
2018-01-04 11:30 0.002282 0.002152
datetime 是dtype='datetime64[ns]'
所以很容易做类似的事情df['2018-01-04']
,它会拉起来。
问题是如何创建一个循环,让我可以在不知道时间序列中的哪一天的情况下一次迭代每一天。我不担心时间,只担心一天。这样做的原因是只对当天进行一些计算,附加到表格并移至第二天。
解决方案
这有帮助吗?
重新创建数据框:
import pandas as pd
import numpy as np
data = '''\
DateTime C_CL C_EB
2018-01-03T10:30 -0.002726 -0.002921
2018-01-03T10:50 -0.005832 -0.005343
2018-01-03T11:10 -0.006966 -0.007278
2018-01-03T11:30 -0.01883 -0.019026
2018-01-04T10:30 -0.0021 -0.001261
2018-01-04T10:50 0.006887 0.00595
2018-01-04T11:10 -0.00076 -0.000717
2018-01-04T11:30 0.002282 0.002152'''
file = pd.compat.StringIO(data)
df = pd.read_csv(file, sep='\s+', parse_dates=['DateTime'], index_col=['DateTime'])
以下是您可以运行的一些操作:
#df.groupby(df.index.date).sum()
#df.groupby(df.index.date).mean()
#df.groupby(df.index.date).std()
#df['sum_CL'] = df.groupby(df.index.date)['C_CL'].transform('sum')
#df.groupby(df.index.date)['C_CL'].agg(['sum','mean','std'])
推荐阅读
- html - 内联 CSS 过渡/动画
- nlp - NLP 的 VAE 潜在空间中的“洞”是什么?
- vue.js - 如何在 vuejs 中获取价值 [__ob__: Observer]
- javascript - A-Frame:如何检测用户已退出 AR 模式
- c# - 在 ASP.NET Core MVC 应用程序中使用 ajax JQuery 呈现后,JSON 数据返回为未定义
- python - 提取标签的特定值
- typescript - eslint“未找到规则'no-explicit-any'的定义”始终显示
- amazon-web-services - 将 Amazon S3 存储桶中的音频文件转换为 wav
- pytest-bdd - pytest-bdd 功能文件可以使用来自不同步骤实现文件的步骤吗?
- ios - 无法安装 pod