大Pandas多变量多站时间序列数据的处理

2024-10-02 22:26:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我有来自不同站点的timeseries数据,每个站点都有一堆变量(有些相同,有些不同于其他站点)。我想 能够按站或变量类型查询,那么什么是好的呢 要使用的结构类型?你知道吗

我想用面板,但似乎他们执行一个 等级制度。你知道吗

我想能够像p.temp或p.siteA和 同时获取数据帧


Tags: 数据面板类型站点结构temptimeseriessitea
1条回答
网友
1楼 · 发布于 2024-10-02 22:26:03

不确定“强制层次结构”是什么意思,但您可以使用Pandas 3D面板完成这种查询:

import numpy as np
from pandas import Panel, date_range

index = date_range(start='2015-01-01', end='2015-02-01')
stations = ['Here', 'There', 'Everywhere']
variables = ['temperature', 'salinity', 'oxygen', 'pH']

data = np.empty((len(index), len(stations), len(variables)))
data.shape
(32, 3, 4)

p = Panel(data=data, items=index, major_axis=stations, minor_axis=variables)
p.shape
(32, 3, 4)

p
<class 'pandas.core.panel.Panel'>
Dimensions: 32 (items) x 3 (major_axis) x 4 (minor_axis)
Items axis: 2015-01-01 00:00:00 to 2015-02-01 00:00:00
Major_axis axis: Here to Everywhere
Minor_axis axis: temperature to pH

# Slice by date:
p.ix['2015-01-30']
# by variable
p.minor_xs('salinity')
# by station
p.major_xs('There')
# all together
p.ix['2015-01-30']['temperature']['Here']

This notebook显示有关切片和结果数据帧的更多详细信息。你知道吗

相关问题 更多 >