xml地图|网站地图|网站标签 [设为首页] [加入收藏]
买卖股票的最佳时机,对C语言的认识
分类:编程

一、numpy

  numpy是python数据分析和机器学习的基础模块之一。它有两个作用:1.区别于list列表,提供了数组操作、数组运算、以及统计分布和简单的数学模型;2.计算速度快[甚至要由于python内置的简单运算],使得其成为pandas、sklearn等模块的依赖包。高级的框架如TensorFlow、PyTorch等,其数组操作也和numpy非常相似。

1>起源:1972年,贝尔实验室的丹尼斯·里奇和肯·汤姆逊在开发unix操作系统时设计的。C是建立在B语言(汤姆逊发明的)的基础上的。

给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。

  1、随机数生成

    常用的生成随机数的几个函数:

    图片 1

图片 2图片 3

li = list(range(10))
print(li, type(li))

li = np.array(li)
print(li, type(li))

li = li.tolist()   # list(li)也可以
print(li, type(li))

list和array互相转化

图片 4图片 5

np.random.rand(10, 5)   # 生成[0, 1]之间均匀分布的数组10行,5列

np.random.randn(10, 5)  # 生成[0, 1]之间均匀分布的数组10行,5列

np.random.randint(10, 20, size=(10, 5))  #  生成[10, 20]之间随机数组10行,5列

np.random.random(size=(10, 5))  # 生成[0, 1]之间的10行5列的数组

li = list(range(10))
np.random.choice(li, size=(10, 5))  # 从li中产生随机数,生成10行5列的数组

np.arange(10, 20, 2, )      # 从[10, 20]中以步长为2生成一维数组

函数使用

     其它不常见的随机数生成函数:

    图片 6

图片 7图片 8

np.random.binomial(100, 0.5, size=(10, 5))

二项分布

2>优点:1 强大的控制结构

如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。

  2、数组切片

   array对象的切片和list列表的切片操作相同。记住一个规则array[start: end: step]。

图片 9图片 10

dt = np.random.binomial(100, 0.5, size=(10, 5))
dt[1: 3, :]
dt[[1,5], :]
dt[[1, 4, 7]]
dt[:, [2, 4]]

数组切片

   一维和n维数组的转化

图片 11图片 12

li = np.random.random((1, 100)).reshape(20, 5)   # 将1行100列的数组转换成20行5列的新数组
print(li)

li = li.reshape((2, -1))  # 将20行5列的数组转换成2行50列的新数组
# 将20行5列的数组转换为2行50列的数组,-1表示根据原数据和当前行[列]参数来自动生成列[行]数
print(li)

li = li.reshape(-1, 100)  # 将2行50列的数组转换成1行100列的数组
print(li)

数组维度转化

    2 快速

注意你不能在买入股票前卖出股票。

  3、数组运算

图片 13图片 14

# 加法
np.sum(l1)  # 有意思的sum
np.sum(l1, axis=0)
np.sum(l1, axis=1)
np.sum([l1, l2])
np.subtract(l1, l2)  # 减法
np.multiply(l1, l2)  # 乘法
np.divide(l1, l2)   # 除法
np.power(l1, l2)    # 幂乘
np.floor_divide(l1, l2)  # 地板除
np.floor(l1)  # 向下取整
np.ceil(l1)  # 向上取整
np.dot(l1, l2.T)  # 点积 l2.T表示转置
np.

# 以下和sum的使用方式相同
np.max(l1)    
np.min(l1)
np.mean(l1)
np.median(l1)
np.std(l1)
np.var(l1)
# np.vander()  # 必须是一维数组,
# li = np.arange(1, 5, step=1, dtype=int)
# np.vander(li, len(li))

View Code

  numpy还有其它的一些常用函数,如np.exp(), np.abs()等,也可以通过np.loadtxt读取txt文件。

    3 代码紧凑,程序更小

示例 1:

本文由澳门新葡亰手机版发布于编程,转载请注明出处:买卖股票的最佳时机,对C语言的认识

上一篇:Python中何时使用断言,的DataTable操作方法 下一篇:没有了
猜你喜欢
热门排行
精彩图文