如何使用一个键,对具有不同功能的大数据帧进行重采样?

2024-05-15 03:37:26 发布

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

我有一个大的时间序列数据集,有超过200个记录值(列)。有些值需要求平均值,有些值需要求和,我有一个列表来确定哪个值是哪个值。我需要帮助弄清楚如何将该列表输入重采样的how=函数。

示例数据:

"Timestamp","TZ","TAO (degF)","RHO (%)","WS (mph)","WD (deg)","RAIN (mm)","OAP (hPa)","INSOL (W/m2)","HAIL (hits/cm2)"......."
2014/04/01 01:01:01.005,n,45.3,88.2,0,0.6,0.339,1.0108,-0.270342,0,68.147808,40.91662,68.15884,40.672356,66.55452,......
2014/04/01 01:02:01.027,n,45.3,88,0,3.4,0.339,1.0108,-0.124948,0,68.216736,40.929836,68.15884,40.656932,66.560072,.......
2014/04/01 01:03:01.050,n,45.3,88,0,1.7,0.34,1.0108,-0.145394,0,68.156064,40.890184,68.103736,40.68332,66.557296,......

我能想到的最好的方法是将列表连接成一个字符串以传递给how=函数,但是字符串的连接会使函数SeriesGroupBy出错。

^{pr2}$

Tags: 数据函数字符串示例列表记录时间序列
1条回答
网友
1楼 · 发布于 2024-05-15 03:37:26

我会递给你一本字典:

>>> df
                             WD (deg)  RAIN (mm)
Timestamp                                       
2014-04-01 01:01:01.005000  40.916620  68.158840
2014-04-01 01:02:01.027000  40.929836  68.158840
2014-04-01 01:03:01.050000  40.890184  68.103736

[3 rows x 2 columns]
>>> what_to_do = {"WD (deg)": "mean", "RAIN (mm)": "sum"}
>>> df.resample("60Min", how=what_to_do)
                      RAIN (mm)   WD (deg)
Timestamp                                 
2014-04-01 01:00:00  204.421416  40.912213

[1 rows x 2 columns]

我认为像您现在这样使用recordhow列表有点危险,因为列很容易被意外地洗牌,在这种情况下,您的平均值和总和都将被关闭。使用列名更安全。但是如果你有recordhow,你可以做一些类似的事情:

^{pr2}$

不过,我还是建议你尽快摆脱那些不知道什么映射到什么的空列表。在

相关问题 更多 >

    热门问题