【发布时间】:2020-07-02 11:54:19
【问题描述】:
假设我有以下数据框。
import pandas as pd
df = pd.DataFrame()
df['close'] = (7980,7996,8855,8363,8283,8303,8266,8582,8586,8179,8206,7854,8145,8152,8240,8373,8319,8298,8048,8218,8188,8055,8432,8537,9682,10021,9985,10169,10272,10152,10196,10270,10306,10355,10969,10420,10154,10096,10307,10400,10484)
df['A'] = ('TDOWN','TDOWN', 'TDOWN', 'TOP', 'TOP', 'TOP', 'TOP', 'TOP','BUP','BUP','BUP', 'BUP', 'BUP', 'BOTTOM', 'BOTTOM', 'BOTTOM', 'BUP','BUP','BUP','BUP', 'BOTTOM', 'BOTTOM', 'BUP','BUP','BUP', 'BUP','BUP','BUP','BUP', 'BOTTOM', 'BOTTOM', 'BOTTOM', 'BOTTOM','TDOWN','TDOWN', 'TDOWN', 'TOP', 'TOP', 'TOP', 'TOP', 'TOP')
print(df)
对于“TOP”和“BOTTOM”的每组返回,我想返回一组“TOP”的最高数字和一组“BOTTOM”的最小数字。以下是我正在努力实现的预期结果
df['outcome1'] = ('-','-', '-', '-', '-', '-', '-', '8582','-','-','-', '-', '-', '8152', '-', '-', '-','-','-','-', '-', '8055', '-','-','-', '-','-','-','-', '10152', '-', '-', '-','-','-', '-', '-', '-', '-', '-', '10848')
您会注意到“结果 1”列中的数字显示了 A 列中的一些相应数字。这些数字是“TOP”组中最高的数字,而“BOTTOM”组中最低的数字。
如何编码,以便我可以反映与列“outcome1”相同的结果。
谢谢
【问题讨论】: