复习了Python的基础语法,开始使用Numpy进行数据操作,同时使用JuPyter notebook 实践、记录。
一、逻辑运算
1.1 基本判断
1 2
| 1. 大于、小于可以直接进行判断 2. 赋值:根据1的删选可以直接赋值 > stock_front[stock_front > 0.5] = 2 # 筛选>0.5的值,设置成2
|
1 2
| stock_change = np.random.normal(0,1,(8,10)) stock_change
|
array([[-0.75254896, 0.13800347, -1.82692041, 0.67962715, -0.95599639,
-0.01967562, -0.02826683, -1.19649466, -0.90110178, -1.77988564],
[ 0.10673182, -0.55881195, -0.14170679, -0.89750724, -0.46186144,
-0.29916581, -1.2683926 , -0.47452052, 2.03079179, -0.61752357],
[ 0.45919586, 0.22145301, 0.52497513, -0.60608082, 0.57323945,
-0.1365155 , -0.71665469, 0.09672215, -1.56701887, 1.77477174],
[ 0.99457294, 1.97057607, -1.40286495, 1.3425013 , 2.00707248,
-0.90091719, -1.14843654, -1.14711919, -0.16398829, -0.59108646],
[ 1.26721256, -1.0386193 , -1.61032871, -0.81512405, 0.60494824,
1.69766176, 1.71788956, 1.47036844, 1.3739853 , 0.87082525],
[-0.41096473, 2.96331414, 1.46354672, -0.94421902, -0.05690433,
-0.97004494, -1.59407176, -1.52980795, -0.4887531 , -0.51847338],
[-0.25098181, -0.85611159, 1.89772287, -0.57752288, 0.39839749,
1.06381376, -0.03351005, 1.58241277, -0.93007033, 0.62067707],
[ 0.80110324, -0.095168 , -2.26290159, -0.81397822, -0.71994656,
-0.68902653, 0.60960571, 0.47935453, 0.57727384, -1.34628842]])
1 2
| stock_front = stock_change[0:5,0:5] stock_front
|
array([[-0.75254896, 0.13800347, -1.82692041, 0.67962715, -0.95599639],
[ 0.10673182, -0.55881195, -0.14170679, -0.89750724, -0.46186144],
[ 0.45919586, 0.22145301, 0.52497513, -0.60608082, 0.57323945],
[ 0.99457294, 1.97057607, -1.40286495, 1.3425013 , 2.00707248],
[ 1.26721256, -1.0386193 , -1.61032871, -0.81512405, 0.60494824]])
array([[False, False, False, True, False],
[False, False, False, False, False],
[False, False, True, False, True],
[ True, True, False, True, True],
[ True, False, False, False, True]])
1 2
| stock_front[stock_front > 0.5] = 2 stock_front
|
array([[-0.75254896, 0.13800347, -1.82692041, 2. , -0.95599639],
[ 0.10673182, -0.55881195, -0.14170679, -0.89750724, -0.46186144],
[ 0.45919586, 0.22145301, 2. , -0.60608082, 2. ],
[ 2. , 2. , -1.40286495, 2. , 2. ],
[ 2. , -1.0386193 , -1.61032871, -0.81512405, 2. ]])
1.2 通用判断函数
1 2
| 1. np.all() #all 所有都满足要求,True 2. np.any() #any 只要有一个满足要求,True
|
True
1
| np.any(stock_front<=0.2)
|
True
1.3 三元运算符
1 2
| 1. np.where(condition, 值1, 值1) # condition为true,值1,否则 值2 2. np.where(np.logical_and(stock_front>0,stock_front<1), 1, 0)
|
1
| np.where(stock_front>0, 1, 0)
|
array([[0, 1, 0, 1, 0],
[1, 0, 0, 0, 0],
[1, 1, 1, 0, 1],
[1, 1, 0, 1, 1],
[1, 0, 0, 0, 1]])
1
| np.where(np.logical_and(stock_front>0,stock_front<1), 1, 0)
|
array([[0, 1, 0, 0, 0],
[1, 0, 0, 0, 0],
[1, 1, 0, 0, 0],
[0, 0, 0, 0, 0],
[0, 0, 0, 0, 0]])
二、 统计运算
2.1 统计指标
1 2 3 4 5 6 7 8
| min() max() median() mean() std() # 标准差 var() # 方差 argmax() # 最大值的坐标 argmin() # 最小值的坐标
|
2.0
array([2. , 0.10673182, 2. , 2. , 2. ])
3