Python Pandas-根据另一列获取一列的最小值,并将另一列分组

TheOnlyAnil:

我有三列,它们看起来像这样:

Symbol    |  Type  |  Date    |  Value
----------------------------------------
Reliance  |  Buy   | 01/03/20 | 230000
Reliance  |  Sell  | 04/03/20 | 980000
Reliance  |  Buy   | 17/03/20 |  97000
TCS       |  Buy   | 10/03/20 | 120000
TCS       |  Buy   | 07/03/20 | 890000
TCS       |  Sell  | 05/03/20 | 300000

我想选择最小date和组value柱和type柱。Type列可以显示买入和卖出(一个交易品种只有两个)。

最终结果将如下所示:

Symbol    |  Type  |  Date    |  Value
----------------------------------------
Reliance  |  Buy   | 01/03/20 |  327000
Reliance  |  Sell  | 04/03/20 |  980000
TCS       |  Buy   | 05/03/20 | 1010000
TCS       |  Sell  | 05/03/20 |  300000

到目前为止,我可以在没有日期列的情况下成功分组。代码如下:

new_df = the_df.groupby(['symbol_', type_col])[value_col].sum().reset_index()

我试图这样做:

new_df = the_df.groupby(['symbol_', type_col, date_col])[value_col].sum().reset_index()
df_new = new_df[new_df.groupby('symbol_').date_of_initmation_to_company_.transform('min') == new_df[date_col]]

但是它没有按预期工作。实际上,第二个像with .transform并没有做任何更改。您能告诉我正确的方法吗?

BEN_YO:

然后

out = df.groupby(['Symbol','Type']).agg({'Date' : 'first' , 'Value' : 'sum'}).reset_index()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Python Pandas中找到一列的最小值大于另一列的值

Python Pandas分组并基于另一列排除值

Pandas / Python:根据另一列中的值设置一列的值

Pandas 基于另一列 python 获取一列中的唯一值

根据另一列(Python,Pandas)中的值删除一列的重复项

Python pandas:对于一列中的每个唯一值,在另一列中找到一个最小值并从另一列的值中减去它

如何根据加速值对一列进行分组并进一步对另一列进行分组并对其进行计数(Pandas Python)

Python Pandas:按一列分组,仅在另一列中聚合,但获取相应的数据

Python (pandas) - 如何对一列中的值进行分组,然后根据另一列中的值删除或保留该组

Python Pandas:根据另一列更改条件

Python Pandas:根据另一列的值更新行

pandas当另一列与python中的值匹配时,只获取一列的平均值(浮动)值

按年份分组并将功能应用于另一列-Python,Pandas

Python Pandas DataFrame检查一列的值是否在另一列表中

根据另一列pandas python的值在python中添加新列

如何基于python(pandas,jupyter)中的另一列值获取一列的平均值

根据Pandas中另一列的值添加新列(python)

Python Pandas组基于列并获取最大值,但基于另一列排除

Python Pandas,根据另一列中的值进行日期时间舍入

Python Pandas,根据另一列中的值进行日期时间舍入

Python:Pandas:如何根据Groupby在另一列中查找最大值

根据一列的最小值和最大值恢复所有行-Python Pandas

python pandas-将列除以另一列

使用 Python pandas 从另一列驱动列

根据数组的另一列在一列中聚合最小值最大值-Python

根据另一列(Python Pandas)的值在列中添加一部分字符串

如何用一列的最大值与另一列的最小值之间的差异将一列中的df按Python分组?

Python pandas - 为另一列中的每个不同值显示一列中记录数最多的值

Python pandas:如何更改(复杂)基于另一列的一列?