pandas如何根据时间值是否为同一天内进行分组
时间: 2024-05-15 07:17:17 浏览: 41
可以使用 pandas 的 resample() 和 groupby() 方法,将时间列设置为索引,并按日期重采样,然后进行 groupby() 分组。具体代码如下:
```
import pandas as pd
# 读取数据并转换为日期时间格式
df = pd.read_csv('data.csv')
df['date'] = pd.to_datetime(df['date'])
# 将日期时间列设置为索引
df.set_index('date', inplace=True)
# 按日期重采样,求出每天的最大值
df_max = df.resample('D').max()
# 将数据按照日期分组
groups = df_max.groupby(df_max.index.date)
# 遍历每个分组,并计算均值、方差等统计值
for name, group in groups:
print(name)
print(group.mean())
print(group.var())
```
此时,代码会输出每一天的日期、该天内所有数据的均值和方差,例如:
```
2019-01-01
a 0.441925
b 0.698418
c 0.244307
dtype: float64
a 0.010344
b 0.002786
c 0.000041
dtype: float64
2019-01-02
a 0.624123
b 0.177819
c 0.858100
dtype: float64
a 0.016782
b 0.003244
c 0.001972
dtype: float64
```
希望这个回答能够帮到你!
阅读全文