这里绝对是新手。。。。
我有一个包含支出数据列表的数据集1我想创建一个循环来确定此人比前一天花费更多以及比第二天花费更多的日期。在这样做的过程中,我希望它要么打印日期和金额(费用(,要么创建一个新的列,读取true/false。我应该用Numpy还是Pandas?
我在想这样的事情:今天=I昨天=I-1明天=I+1…然后继续创建一个循环
你在寻找这样的东西吗:
# sample data
np.random.seed(4)
df = pd.DataFrame({'Date': pd.date_range('2020-01-01', '2020-01-10'),
'Name': ['Some Name', 'Another Name']*5,
'Price': np.random.randint(100,1000, 10)})
# groupby name
g = df.groupby('Name')['Price']
# create a mask to filter your dataframe where the current price is grater than the price above and below
mask = (g.shift(0) > g.shift(1)) & (g.shift(0) > g.shift(-1))
df[mask]
Date Name Price
3 2020-01-04 Another Name 809
4 2020-01-05 Some Name 997
7 2020-01-08 Another Name 556