Python 如何返回函数中标识的结果计数?(对/错)

Python 如何返回函数中标识的结果计数?(对/错),python,algorithm,function,loops,sorting,Python,Algorithm,Function,Loops,Sorting,我有一个函数,它根据以下函数中定义的条件返回False和True: def find_trend(data, period:int): ''' Inputs: takes in a dataframe and an interger Outputs: returns True if the trend of the simple moving average over given period is positive, else returns False

我有一个函数,它根据以下函数中定义的条件返回
False
True

def find_trend(data, period:int):
    '''
    Inputs:
    takes in a dataframe and an interger
    Outputs:
    returns True if the trend of the simple moving average over given period is positive, else returns False
    '''
    data['SMA'] = data['close'].rolling(period).mean()
    return (data['SMA']-data['SMA'].shift(1)) > 0
我希望看到返回的值的确切数量
True
False

是否有办法通过
print()
输出此信息

  • (data['SMA']-data['SMA'].shift(1))>0
    仅创建布尔值
  • 为值和布尔创建一个变量,并同时返回
  • data['SMA']=data['close'].rolling(period).mean()
    将更新在位的数据帧,这意味着
    SMA
    列将添加到
    aapl
def find_趋势(数据,周期:int):
'''
投入:
接收一个数据帧和一个整数
产出:
如果简单移动平均线在给定时间段内的趋势为正,则返回True,否则返回False
'''
sma=数据['Close']。滚动(周期).mean()#创建具有滚动平均值的序列
diff=sma-sma.shift(1)#计算一系列值
大于0=差异>0会创建一系列布尔值
返回差,大于0
aapl['value'],aapl['trend']=查找趋势(aapl,4)
#显示器(aapl)
日期高点低点开盘收盘成交量调整收盘指数走势
0 2019-01-31 169.000000 164.559998 166.110001 166.440002 40739600.0 162.852737 aapl NaN False
1 2019-02-01 168.979996 165.929993 166.960007 166.520004 32668100.0 162.931030 aapl NaN False
2019-02-04 171.660004 167.27999167.410004 171.250000 31495500.0 167.559082 aapl NaN False
3 2019-02-05 175.080002172.350006172.860001 174.179993 36101600.0 170.425934 aapl NaN False
4 2019-02-06 175.570007172.850006 174.649994 174.240005 28239600.0170.484650 aapl 1.950001正确
5 2019-02-07 173.940002 170.339996 172.399994 170.940002 31741700.0 167.255768 aapl 1.105000真
6 2019-02-08 170.660004 168.419998 168.990005 170.410004 23820000.0 167.452316 aapl-0.209999假
7 2019-02-11 171.210007 169.250000 171.05003 169.429993 20993400.0 166.489288 aapl-1.187500假
8 2019-02-12 171.000000169.699997 170.100006170.889992228500.0167.923965 aapl-0.837502假
  • (data['SMA']-data['SMA'].shift(1))>0
    仅创建布尔值
  • 为值和布尔创建一个变量,并同时返回
  • data['SMA']=data['close'].rolling(period).mean()
    将更新在位的数据帧,这意味着
    SMA
    列将添加到
    aapl
def find_趋势(数据,周期:int):
'''
投入:
接收一个数据帧和一个整数
产出:
如果简单移动平均线在给定时间段内的趋势为正,则返回True,否则返回False
'''
sma=数据['Close']。滚动(周期).mean()#创建具有滚动平均值的序列
diff=sma-sma.shift(1)#计算一系列值
大于0=差异>0会创建一系列布尔值
返回差,大于0
aapl['value'],aapl['trend']=查找趋势(aapl,4)
#显示器(aapl)
日期高点低点开盘收盘成交量调整收盘指数走势
0 2019-01-31 169.000000 164.559998 166.110001 166.440002 40739600.0 162.852737 aapl NaN False
1 2019-02-01 168.979996 165.929993 166.960007 166.520004 32668100.0 162.931030 aapl NaN False
2019-02-04 171.660004 167.27999167.410004 171.250000 31495500.0 167.559082 aapl NaN False
3 2019-02-05 175.080002172.350006172.860001 174.179993 36101600.0 170.425934 aapl NaN False
4 2019-02-06 175.570007172.850006 174.649994 174.240005 28239600.0170.484650 aapl 1.950001正确
5 2019-02-07 173.940002 170.339996 172.399994 170.940002 31741700.0 167.255768 aapl 1.105000真
6 2019-02-08 170.660004 168.419998 168.990005 170.410004 23820000.0 167.452316 aapl-0.209999假
7 2019-02-11 171.210007 169.250000 171.05003 169.429993 20993400.0 166.489288 aapl-1.187500假
8 2019-02-12 171.000000169.699997 170.100006170.889992228500.0167.923965 aapl-0.837502假

完美!谢谢你的完美!谢谢你
aapl['trend'] = find_trend(aapl, 4)
aapl.trend.head()

0   False
1   False
2   False
3   False
4   False
5   False
6   False
7   True
8   True
9   True
10  False
11  False
12  False
13  False
14  True
15  True
16  True
17  True
18  False
19  False
20  False
21  True
22  False
23  False
24  False
25  True
26  False
27  False
28  False
29  True