zoukankan      html  css  js  c++  java
  • 最值

    最值

    np.max() np.min() np.ptp(): 返回一个数组中最大值/最小值/极差 

    import numpy as np
    # 产生9个介于[10, 100)区间的随机数
    a = np.random.randint(10, 100, 9)
    print(a)
    print(np.max(a), np.min(a), np.ptp(a))

    # [92 12 30 22 37 76 85 56 66]
    # 92 12 80

    np.argmax() np.argmin(): 返回一个数组中最大/最小元素的下标

    print(np.argmax(a), np.argmin(a))

    # 0 1

    np.maximum() np.minimum(): 将两个同维数组中对应元素中最大/最小元素构成一个新的数组

    import numpy as np
    
    # 产生9个介于[10, 100)区间的随机数
    a = np.random.randint(10, 100, 9)
    b = np.random.randint(10, 100, 9)
    print(a)
    # [13 59 93 98 53 50 12 73 51]
    print(b)
    # [34 90 68 84 46 99 74 11 70]
    print(np.maximum(a, b))
    # [34 90 93 98 53 99 74 73 70]
    print(np.minimum(a, b))
    # [13 59 68 84 46 50 12 11 51]
    a=np.arange(1,10).reshape(3,3)
    b = np.arange(1,10)[::-1].reshape(3,3)
    print(np.maximum(a,b))
    """
    [[9 8 7]
     [6 5 6]
     [7 8 9]]
    """
    print(np.minimum(a,b))
    """
    [[1 2 3]
     [4 5 4]
     [3 2 1]]
    """

    案例:评估AAPL股票的波动性。

    import numpy as np
    import datetime as dt
    
    def dmy2ymd(dmy):
      """
      把日月年转年月日
      :param day:
      :return:
      """
      dmy = str(dmy, encoding='utf-8')
      t = dt.datetime.strptime(dmy, '%d-%m-%Y')
      s = t.date().strftime('%Y-%m-%d')
      return s
    
    
    dates, opening_prices, 
    highest_prices, lowest_prices, 
    closing_prices ,volumes= 
      np.loadtxt('aapl.csv',
                 delimiter=',',
                 usecols=(1, 3, 4, 5, 6,7),
                 unpack=True,
                 dtype='M8[D],f8,f8,f8,f8,f8',
                 converters={1: dmy2ymd})  # 日月年转年月日
    
    #30天的最大震荡幅度
    max_price = np.max(highest_prices)
    min_price = np.min(lowest_prices)
    print(min_price,'~',max_price)
    # 333.53 ~ 364.9
    
    #哪一天是最高价,哪一天是最低价
    max_ind = np.argmax(highest_prices)
    min_ind = np.argmin(lowest_prices)
    print('max',dates[max_ind])#max 2011-02-16
    print('min',dates[min_ind])#min 2011-01-28
  • 相关阅读:
    转载Crazybingo的文章: 第三章 创造平台——Quartus II 11.0 套件安装指南
    Can't launch the ModelSim-Altera software
    一种简单的ADV7842调试视频pixel_cnt/line的办法.
    调试ADV7842的点滴 之 hdmi
    沿检测使能,时钟同步化
    global clock network
    捡到篮子里边的都是菜
    (转)时序分析基本公式
    Spring中的AOP(一)
    AOP的概念
  • 原文地址:https://www.cnblogs.com/maplethefox/p/11458496.html
Copyright © 2011-2022 走看看