In [23]: a = np.array([[1, 2], [3, 4]])
In [24]: b = np.array([[5, 6]])
In [25]: np.concatenate((a, b), axis=0)
Out[25]:
array([[1, 2],
[3, 4],
[5, 6]])
In [28]: np.concatenate((a,b.T),axis = 1)
Out[28]:
array([[1, 2, 5],
[3, 4, 6]])
x = np.arange(4).reshape((2,2))
#x 为:
array([[0, 1],
[2, 3]])
import numpy as np
x.transpose()
array([[0, 2],
[1, 3]])
1)输入:x为特征,y为目标变量. 2)输出:r: 相关系数 [-1,1]之间,p-value: p值。 注: p值越小,表示相关系数越显著,一般p值在500个样本以上时有较高的可靠性。
x[:, np.newaxis] ,放在后面,会给列上增加维度
x[np.newaxis, :] ,放在前面,会给行上增加维度
6.np.squeeze从数组中删除单维度条目,把shape为1的去掉
>>import numpy as np
>>e = np.arange(10)
>>e
>>Out[28]: array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
>>a = e.reshape(10, 1, 1)
>>a.shape
>>Out[35]: (10, 1, 1)
>>b = np.squeeze(a)
>>b.shape
>>Out[36]: (10,)
7.np.expand-dims 扩展数组形状
>>import numpy as np
>>a = np.arange(24).reshape(2,3,4)
>>a.shape
>>Out[41]: (2, 3, 4)
>>b = np.expand_dims(a, axis=0)
>>b.shape
>>Out[43]: (1, 2, 3, 4)
>>c = np.expand_dims(a, axis=1)
>>c.shape
>>Out[45]: (2, 1, 3, 4)
8.
stack():沿着新的轴加入一系列数组。
vstack():堆栈数组垂直顺序(行)
hstack():堆栈数组水平顺序(列)。
dstack():堆栈数组按顺序深入(沿第三维)。
concatenate():连接沿现有轴的数组序列。
vsplit():将数组分解成垂直的多个子数组的列表。
3.scipy处理科学计算,主要包括插值、积分、优化
计算远期利率:在零息曲线中插值折现因子
计算期权价格:将期望写成积分并数值求解
配置资产权重:优化「风险平价」模型权重
给定一组 (xi, yi),其中 i = 1, 2, ..., n,而且 xi 是有序的,称为「标准点」。插值就是对于任何新点 xnew,计算出对应的 ynew。换句话来说,插值就是在标准点之间建立分段函数 (piecewise function),把它们连起来。这样给定任意连续 x 值,带入函数就能计算出任意连续 y 值。
scipy.interpolate 里面两大杀器:splrep 和 splev。两个函数名称都是以 spl 开头,全称 spline (样条),可以理解这两个函数都和样条有关。不同的是,两个函数名称以 rep 和 ev 结尾,它们的意思分别是:
rep:representation 的缩写,那么 splrep 其实生成的是一个「表示样条的对象」
ev:evaluation 的缩写,那么 splev 其实用于「在样条上估值」
分段线性函数来拟合 sin(x) + 0.5x 函数当然不会太好啦。那我们试试分段三次样条函数 (k = 3)
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务