# numpy 帮助处理数值型数据 import random import numpy as np #使用numpy 生成数组 a = np.array([1,2,3]) print(type(a)) #<class ‘numpy.ndarray‘> b = np.array(range(10)) c = np.arange(4,10,2) #[4,10) 步长为2 print(c) print(c.dtype) # int64 numpy 对数组的固有类型 # numpy 中的数据类型 t4 = np.array(range(0,12),dtype=‘int8‘) # numpy 中的bool 类型 t5 = np.array([11,0,1,0,10,10,10,0,0,0,1],dtype=bool) # 修改数据类型 t6 = t5.astype(‘int64‘) #%% # numpy 中的小数 t7 = np.array([random.random() for i in range(10)]) print(t7) t8 = np.round(t7,2) # 保留小数值 print(t8) z = "%.2f"%random.random() print(z) #%%------------- #数组的形状 print(t4.shape) t2 = np.array([[1,2,3],[4,5,6]]) print(t2.shape) t3 = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]) # 3维 print(t3.shape) #修改数组的形状 print(t4) t14 = t4.reshape((3,4)) # 转变为三行四列 print(t14) #%% t5 = np.arange(24).reshape((2,3,4)) # 两块,每块三行,每行4列 print(t5) #降维 t6 = t5.reshape((24,1)) #(24,)和(24,1)是不一样的 print(t6) t6= t5.flatten() print(t6) #转换成1维 #%% #数组的计算 t5=t5.reshape(4,6) print(t5*2) t6=np.arange(100,124).reshape(4,6) print(t6) print(t5+t6) #对应位置进行计算 t7 = np.arange(0,6) print(t5-t7) # 没行都减t7 t8 = np.arange(0,4).reshape(4,1) print(t5-t8) #%% #轴 axis = 0 行 1 列 三维 :0 块 1行 2列 # numpy 读取数据 # np.loadtxt(fname,dtype=np.float,delimiter=None,skiprows=0,usecols=None,unpack=False) # fname:文件,字符串或产生器,可以是.gz或bz2压缩文件 # delimier 分割字符串,默认为空格,改为逗号 # skiprows 跳过前X行 # usecols 读取指定的列,索引,元组类型 # unpack 表示转置 如果True 读入属性将分别写入不同数组变量, False, 读入数据值值写入一个数组变量,默认false
原文:https://www.cnblogs.com/adelinebao/p/13376949.html