python - Pandas:重新采样数据框列,获取对应于最大值的离散特征

标签 python pandas resampling argmax

示例数据:

import pandas as pd
import numpy as np
import datetime

data = {'value': [1,2,4,3], 'names': ['joe', 'bob', 'joe', 'bob']}
start, end = datetime.datetime(2015, 1, 1), datetime.datetime(2015, 1, 4)
test = pd.DataFrame(data=data, index=pd.DatetimeIndex(start=start, end=end, 
       freq="D"), columns=["value", "names"])

给出:

          value names
2015-01-01  1   joe
2015-01-02  2   bob
2015-01-03  4   joe
2015-01-04  3   bob

我想按“2D”重新采样并获得最大值,例如:

df.resample('2D')

预期的结果应该是:

          value names
 2015-01-01 2   bob
 2015-01-03 4   joe

谁能帮帮我?

最佳答案

您可以重新采样以获得 arg 最大值,然后使用它来提取名称和值

(df.resample('2D')[['value']].idxmax()
   .assign(names=lambda x: df.loc[x.value]['names'].values,
           value=lambda x: df.loc[x.value]['value'].values)
)
Out[116]: 
            value names
2015-01-01      2   bob
2015-01-03      4   joe

关于python - Pandas:重新采样数据框列,获取对应于最大值的离散特征,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44789716/

相关文章:

python - IPython + Pandas 中的 Matplotlib : ImportError Symbol not found: _png_create_info_struct

r - dcast.data.table 中未记录的错误

python - 在Python中将不规则间隔的数据重新采样为规则网格

python - 编译器问题: AssertionError on replace( ) given T or F condition with string and column cell

python - 使用 fgets 导致缓冲区溢出

python - 如果 python 脚本结束,重新启动的最佳方法是什么? (乌类图18.04)

python - 单击 Flask 中的按钮后如何显示图像?

Python列表比较numpy优化

java - 历史贸易数据的时间序列重采样

python - 如何拥有兼具元组和字典特性的数据结构