您的位置:首页 > 编程语言 > Python开发

【Python数据分析与展示】(二)NUMPY数据存取与函数

2017-12-12 01:35 351 查看

numpy存储文件

np.savetxt(frame,array,,fmt=’%.18e’,delimiter = None)

a = np.arange(100).reshape(5,20)
np.savetxt("a.csv",a,fmt = '%d',delimiter = ",")


numpy读取文件

np.loadtxt(frame,dtype =np.float,delimiter = None,unpack = False)

np.loadtxt("a.csv",dtype = np.int,delimiter = ",")


csv只能存储一维和二维数组

对于多维数组我们用tofile,fromfile

a.tofile(frame,sep=”,format = “%s”) #sep如果是空串,则写入二进制文件

a.fromfile(frame,dtype = float,count=-1,spe=”) # count=-1表示默认读取所有数据

numpy的快捷存储和提取

np.save(frame,array) 或np.savez(frame,array)

frame:文件名,以npy和npz为扩展名

np.load(frame)

numpy的随机数函数

函数说明
random.rand(d0,d1…dn)根据d0到dn创建随机数数组,浮点数,[0-1),均匀分布
random.randn(d0,d1…dn)根据d0到dn创建随机数数组,标准正态分布
random.randint(low[,high,shape])根据shape创建随机整数或整数数组,[low-high)
random.seed(s)随机数种子,s是给定的种子数(为了产生相同的随机数,方便测试)
random.shuffle(a)对数组a第0轴(行)进行随机排列,改变数组a
random.permutation(a)同上,不改变数组a
random.choice(a[,size,replace = False,p])从一维数组a中以概率p抽取元素,行程size形状新数组,默认不能重用元素
random.uniform(low,high,size)均匀分布的数组
random.normal(loc,scale,size)正态分布的数组,loc均值,scale标准差
random.uniform(lam,size)泊松分布的数组,lam随机事件发生率

numpy的统计函数

函数说明
sum(a,axis =None)根据指定轴求和
mean(a,axis = None)根据指定轴求平均值
average(a,axis = None,weights = None)根据指定轴求加权平均数
std(a,axis = None)求标准差
var(a,axis = None)求方差
max(a) min(a)
argmin(a) argmax(a)a中最小值最大值降成一维后的下标位置
unravel_index (index,shape)根据shape将一维下标index转化成多维下标
ptp(a)计算数组中最大值和最小值的差
median (a)中值
gradient(a)计算梯度,如果为多维,则多个维度的梯度
a = np.arange(0,24).reshape(2,3,4)
np.sum(a,axis =1) #array([ 15,  51,  87, 123])
np.sum(a,axis =0)
#array([[12, 14, 16, 18],
[20, 22, 24, 26],
[28, 30, 32, 34]])
np.argmax(a) # 23
np.unravel_index(23,(2,3,4)) #(1, 2, 3)
c = np.random.randint(2,20,(2,6))
#array([[10, 17, 17, 11,  2, 17],
[ 4,  4, 10, 10,  8, 10]])
np.gradient(c)
#[array([[ -6., -13.,  -7.,  -1.,   6.,  -7.],
[ -6., -13.,  -7.,  -1.,   6.,  -7.]]),
array([[  7. ,   3.5,  -3. ,  -7.5,   3. ,  15. ],
[  0. ,   3. ,   3. ,  -1. ,   0. ,   2. ]])]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息