Numpy数据存取

•NumPy的随机数函数

a = np.random.rand(1,2,3)
print(a)
#[[[0.03339719 0.72784732 0.47527802]
# [0.6456671 0.65639799 0.01300073]]] a = np.random.randn(1,2,3)
print(a)
#[[[ 0.59115211 -0.40289048 1.34532466]
# [-0.04616715 -0.64066822 -1.09722129]]] a = np.random.randint(100,200,(3,4))
print(a)
#[[161 131 187 134]
# [156 114 104 180]
# [182 163 158 121]] #随机数种子,10是给定的种子值
np.random.seed(10)
a = np.random.randint(100,200,(3,4))
print(a)
#[[109 115 164 128]
# [189 193 129 108]
# [173 100 140 136]]

a = np.random.randint(100,200,(3,4))
print(a)
#[[184 199 152 144]
# [173 171 179 144]
# [133 105 197 143]] np.random.shuffle(a)
print(a)
#[[173 171 179 144]
# [133 105 197 143]
# [184 199 152 144]] b = np.random.permutation(a)
#[[173 171 179 144]
# [133 105 197 143]
# [184 199 152 144]]
print(b)
#[[133 105 197 143]
# [173 171 179 144]
# [184 199 152 144]] a = np.random.randint(100,200,(8,))
print(a)
#[131 195 130 165 177 107 197 132] b = np.random.choice(a,(3,2))
print(b)
#[[195 107]
# [177 197]
# [130 107]] b = np.random.choice(a,(3,2),replace=False)
#[[107 130]
# [197 132]
# [195 131]] #加权,元素出现次数越多,被抽取的概率越高
b = np.random.choice(a,(3,2),p=a/np.sum(a))
print(b)
#[[197 130]
# [131 130]
# [131 130]]

u = np.random.uniform(0,10,(3,4))
print(u)
#[[7.49328353 4.35990777 8.19266316 5.02229727]
# [2.21122875 9.61785352 9.90294149 2.44401573]
# [3.88367203 9.22037768 7.87306998 2.00241521]] u = np.random.normal(10,5,(3,4))
print(u)
#[[13.44007699 10.5502136 14.79616224 -2.17381553]
# [10.42238979 10.12351539 2.8561042 16.78322252]
# [11.90679396 6.75343566 8.01259211 14.96874378]] u = np.random.poission(2,(3,4))
print(u)
#[[4 0 1 2]
# [2 2 3 2]
# [0 0 2 3]]

•NumPy的统计函数

a = np.arange(15).reshape(3,5)
print(a)
#[[ 0 1 2 3 4]
# [ 5 6 7 8 9]
# [10 11 12 13 14]]
print(np.sum(a))
#105
print(np.sum(a,axis=0))
#[15 18 21 24 27]
print(np.sum(a,axis=1))
#[10 35 60] print(np.mean(a))
#7.0
print(np.mean(a,axis=0))
#[5. 6. 7. 8. 9.]
print(np.mean(a,axis=1))
#[ 2. 7. 12.] print(np.average(a))
#7.0
print(np.average(a,axis=0,weights=[1,2,3]))
#[ 6.66666667 7.66666667 8.66666667 9.66666667 10.66666667]

a = np.arange(12).reshape(3,4)
print(a)
#[[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]] print(np.min(a))
#0 print(np.max(a))
#11 print(np.argmin(a))
#0 print(np.argmax(a))
#11 print(np.unravel_index(10,(4,3)))
#(3,1) print(np.unravel_index(np.argmax(a),(4,3)))
#(3,2) print(np.ptp(a))
#11 print(np.median(a))
#5.5

•NumPy的梯度函数

  • np.gradient(f):计算数组f中元素的梯度,当f为多维时,返回每个维度梯度

   梯度:连续值之间的变化率,即斜率

   X坐标轴连续三个x坐标对应的Y轴值:a,b,c其中b的梯度时(c-a)/2

a = np.random.randint(0,20,(5,))
print(a)
#[ 2 10 11 14 12] print(np.gradient(a))
#[ 8. 4.5 2. 0.5 -2. ]

Numpy库基础___五的更多相关文章

  1. Numpy库基础___四

    Numpy数据存取 •数据的csv文件的存取 只能有效存取和读取一维和二维数据 a = np.arange(100).reshape(5,20) #用delimiter分割,默认为空格 np.save ...

  2. Numpy库基础___一

    ndarray一个强大的N维数组对象Array •ndarray的建立(元素默认浮点数) 可以利用list列表建立ndarray import numpy as np list =[0,1,2,3] ...

  3. Numpy库基础___三

    ndarray一个强大的N维数组对象Array •ndarray的操作 索引 a = np.arange(24).reshape((2,3,4)) print(a) #[[[ 0 1 2 3] # [ ...

  4. Numpy库基础___二

    ndarray一个强大的N维数组对象Array •ndarray的变换 x.reshape(shape)重塑数组的shape,要求元素的个数一致,不改变原数组 x = np.ones((2,3,4), ...

  5. Numpy库的学习(五)

    今天继续学习一下Numpy库,废话不多说,整起走 先说下Numpy中,经常会犯错的地方,就是数据的复制 这个问题不仅仅是在numpy中有,其他地方也同样会出现 import numpy as np a ...

  6. $python数据分析基础——初识numpy库

    numpy库是python的一个著名的科学计算库,本文是一个quickstart. 引入:计算BMI BMI = 体重(kg)/身高(m)^2 假如有如下几组体重和身高数据,让求每组数据的BMI值: ...

  7. Python基础——numpy库的使用

    1.numpy库简介:    NumPy提供了许多高级的数值编程工具,如:矩阵数据类型.矢量处理,以及精密的运算库.专为进行严格的数字处理而产生. 2.numpy库使用: 注:由于深度学习中存在大量的 ...

  8. 数据分析与科学计算可视化-----用于科学计算的numpy库与可视化工具matplotlib

    一.numpy库与matplotlib库的基本介绍 1.安装 (1)通过pip安装: >> pip install matplotlib 安装完成 安装matplotlib的方式和nump ...

  9. numpy库的学习笔记

    一.ndarray 1.numpy 库处理的最基础数据类型是由同种元素构成的多维数组(ndarray),简称“数组”. 2.ndarray是一个多维数组的对象,ndarray数组一般要求所有元素类型相 ...

随机推荐

  1. TableView载入WebView的一些小技巧 By 徐

    开发APP的时候,有时候会遇到服务器返回来的数据是一堆html内容,但是又不一定是完整的html ,可能只包含了主要内容,包括一些图片,文字等 然而我们处理带有html标签的数据时,用webview是 ...

  2. Lab: Web shell upload via Content-Type restriction bypass

    首先上传一个正常头像. 之后,上传木马文件,并抓包 POST /my-account/avatar HTTP/1.1 Host: ac4f1f7d1eaa6cd2c0d80622001b00f9.we ...

  3. 描述nginx中worker_processes、worker_cpu_affinity、worker_rlimit_nofile、worker_connections配置项的含义

    worker_processes worker进程的数量,应小于等于cpu核心数,auto为当前主机cpu核心数 work_processes 4 worker_cpu_affinity 配置CPU亲 ...

  4. Java中继承时静态块,构造块,构造函数的执行顺序

    public class Father { static { System.out.println("Father静态块"); } { System.out.println(&qu ...

  5. python篇第5天【变量】

    第4天加班 多个变量赋值 Python允许你同时为多个变量赋值.例如: a = b = c = 1 以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上. 您也可以为多个对象指定多个变 ...

  6. 使用Jitpack发布开源Java库

    原文:使用Jitpack发布开源Java库 | Stars-One的杂货小窝 很久之前也写过一篇使用Jitpack发布Android开源库的文章,详见Android开发--发布第三方库到JitPack ...

  7. 三种移除list中的元素(可靠)

    /** * 直接使用foreach方法移除list中的元素会抛异常 * Exception in thread "main" java.util.ConcurrentModific ...

  8. 盘点Go中的开发神器

    本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star. 在Java中,我们用Junit做单元测试,用JMH做性能基准测试(benchmark),用as ...

  9. [MethodImpl(MethodImplOptions.Synchronized)]与lock机制

    [MethodImpl(MethodImplOptions.Synchronized)]与lock机制 在进行.NET开发时,经常会遇见如何保持线程同步的情况.在众多的线程同步的可选方式中,加锁无疑是 ...

  10. 范围运算符和索引的最终运算符 ^ 在string 和数组中的应用

    //范围运算符在string 和数组中的应用 static void Main(string[] args) { string examplestring = "123456789" ...