开新篇:数据分析学习笔记。
直接在可运行代码的基础上进行注释说明,首先学习numpy的基础语法
#numpy
import numpy as np
def main():
lst=[[1,3,5],[2,4,6]]
print(type(lst))#类型
np_lst=np.array(lst)
print(type(np_lst))
np_lst=np.array(lst,dtype=np.float)#指定类型
print(np_lst.shape)#行列
print(np_lst.ndim)#维数
print(np_lst.dtype)#类型
print(np_lst.itemsize)#每个元素的大小
print(np_lst.size)#大小=元素个数
if __name__=="__main__":
main()
常用的numpy数组:
#常用数组
import numpy as np
def main():
lst=[[1,2,3],[4,5,6]]
print(np.zeros([2,4]))#行为2,列为4的全零矩阵
print(np.ones([3,5]))#……全1矩阵
print("Rand;")
print(np.random.rand(2,4))#产生指定范围的随机数
print(np.random.rand())#随机产生随机数
print("RandInt:")
print(np.random.randint(1,10,3))#随机产生1~10之间的3个整数
print("Randn:")
print(np.random.randn(2,4))#2行4列的服从标准正态分布的随机数
print("Choice:")
print(np.random.choice([10,20,30]))#指定随机产生数值的随机数
print("Distribute:")
print(np.random.beta(1,10))#生成服从beta分布的随机数
if __name__=="__main__":
main()
一些常用的numpy操作:
#一些基本的numpy操作
import numpy as np
def main():
lst=[[1,2,3],[4,5,6]]
print(np.arange(1,11).reshape([2,5]))#不包括11,设置行列,5可缺省为-1
print(np.exp(lst))#nparray可直接对list本身的每个元素进行操作
print(np.exp2(lst))
print(np.sqrt(lst))
print(np.sin(lst))
print(np.log(lst))
lst = np.array([[[1,2,3,4],[5,6,7,8]],[[7,8,9,10],[10,11,12,13]],[[12,13,14,15],[15,16,17,18]]])
print(lst.sum())#对的每个元素进行求和
print(lst.max())#最大值
print(lst.min())#最小值
lst1=np.array([10,11,12,13])
lst2=np.array([20,30,40,50])
print("Add:")
print(lst1+lst2)#两个list每个对应位置的元素的和
print("Sub:")
print(lst1-lst2)
print("Mul:")
print(lst1*lst2)
print("Div:")
print(lst1/lst2)
print("Square:")
print(lst1**2)#平方
print("Dot;")#点乘
print(np.dot(lst1.reshape([2,2]),lst2.reshape([2,2])))
print(np.concatenate((lst1,lst2)))#拼接
print(np.hstack((lst1,lst2)))#一行
print(np.hstack((lst1,lst2)))#按照原行数进行拼接
print(np.split(lst1,2))#分割2份
print(np.copy(lst1))#拷贝
if __name__=="__main__":
main()