# -*- coding: utf-8 -*-
"""
Created on Wed Oct 10 10:07:02 2018

@author: Administrator
"""

'''
numpy库的使用
'''

#创建一维数组
import numpy as np
arr1=np.array([1,2,3,4])
print(arr1)

#创建2维数组
arr2=np.array([ [1,2,3,4],[4,5,6,7],[7,8,9,10] ])
print(arr2)

#创建指定范围的数组
print('范围0-1,步长0.1的数组\n',np.arange(0,1,0.1))
print('范围0-10,步长1的数组\n',np.arange(10))

#创建指定长度的数组
print('范围0-1,元素个数12个\n',np.linspace(0,1,12))

#创建等比数列
print('范围1-100,20个元素的等比数列\n',np.logspace(0,2,20))

#创建全0数组
print('2行3列的全0数组\n',np.zeros((2,3)))
print('1行3列的全0数组\n',np.zeros(3))

#全1数组
print('2行3列的全1数组\n',np.ones((5,3)))
print('1行3列的全1数组\n',np.ones(3))


#对角1矩阵
print('对角线为1,其他元素为0的3*3矩阵\n',np.eye(3))

#对称矩阵
print('对角线为任意值,其他元素为0的4*4矩阵\n',np.diag([1,2,3,4]))

#随机数组
print('1*100的随机数组\n',np.random.random(100))

#服从均匀分布的随机数组
print('10*5的服从均匀分布的随机数组\n',np.random.rand(10,5))

#服从正态分布的随机数组
print('10*5的服从正态分布的随机数组\n',np.random.randn(10,5))

#给定上下范围的随机数组
print('给定上下范围2-10的2*5随机数组\n',np.random.randint(2,10,size=[2,5]))