需要导入的包

import numpy as np
import pandas

一、利用numpy创建数组

1.1创建简单数组

array =np.array([[1,2,3],
[2,3,4]])
print(array)
print('number of dim:',array.ndim)#几维
print('shape',array.shape)#形状 几行几列
print('size',array.size)#有多少个元素

结果:

1.2创建特定属性的数组(矩阵)

a=np.array([2,23,4],dtype=np.int64)#确定特定的元素数据类型
print(a.dtype)
a =np.array([[1,2,3],
[4,5,6]])
print(a)
a=np.zeros((3,4))#三行4列 的0
print(a)
a=np.arange(10,20,2)#10-20 步长为2
print(a)
a=np.linspace(1,10,5)#生成线段 1~10 分5段
print(a)

结果:

二、numpy的简单运算

2.1基础运算

# np的简单运算
a=np.array([10,20,30,40])
b=np.arange(4)
c=a-b#减法
c=a**b#次方
c=10*np.sin(a)#特殊的运算
print(a,b)
print(c)
print(b<3)#单个元素和某个数比大小

结果:

2.2矩阵乘法

# 矩阵的乘法
a=np.array([10,20,30,40])#创建一个array
b=np.array([0,1,2,3])#再创建一个array
print(a.reshape(2,2))#把这两个array全部变为2,2的矩阵
print(b.reshape(2,2)) cdot=np.dot(a.reshape(2,2),b.reshape(2,2))#dot表示矩阵的乘法
cdot2=a.reshape(2,2).dot(b.reshape(2,2)) print(cdot)
print(cdot2)

结果:

2.3矩阵行列和行的相关运算

# 矩阵的行列运算
a=np.random.random((2,4))
print(a)
print(np.sum(a,axis=1))#求行的和
print(np.min(a,axis=0))#求列的最小值
print(np.max(a,axis=1))#求每一行的最大值

结果:

三、numpy的其它的一些运算

3.1最大最小值的索引

a=np.arange(2,14).reshape(3,4)
print(a)
min_key=np.argmin(a)#最小值的索引
print(min_key)
max_key=np.argmax(a)#最大值的索引
print(max_key)

结果:

3.2求平均值

a=np.arange(2,14).reshape(3,4)
print(a)
# 平均值
ave1=np.mean(a)
print(ave1)
ave2=a.mean()
print(ave2)
ave3=np.average(a)
print(ave3)

结果

3.3其它的一些运算

# 求中位数
print(np.median(a))
# 累加 斐波那契数列
print(a)
print(np.cumsum(a))
# 累差
print(a)
print(np.diff(a))
# 非0的数
print(np.nonzero(a))#输出非0的数发位置
# 排序
print(np.sort(a))
# 矩阵的转置
print(np.transpose(a))
print(a.T)
print(a)
# numpy的截取
print(np.clip(a,5,9))#大于5的数全部变9 小于的全部变5

numpy的学习之路(1)——创建数组以及基本运算的更多相关文章

  1. 嵌入式Linux驱动学习之路(八)创建最小的根文件系统

    busybox 在配置busybox,在是否选择要静态链接库时,在静态下,busybox中的工具不需要动态链接库,能够直接运行.而用户自己编写的程序如果需要动态链接库,还是依然需要有. 如果是动态链接 ...

  2. Qt学习之路(60): 创建shared library

    前段时间说了Qt一些类库的使用,今天来换一下口味,来看一下程序设计的问题.今天来说的是关于共享库 shared library. 如果你打开一些 Windows 应用程序的目录,你会发现有很多程序的 ...

  3. React学习之路之创建项目

    React 开发环境准备 IDE工具 visual studio code 开发环境 开发环境需要安装nodejs和npm,nodejs工具包含了npm. nodejs下载官网:https://nod ...

  4. NUMPY的学习之路(2)——索引,合并,分割,赋值

    一.索引 1.1numpy数组的转置 A=np.arange(3,15).reshape(3,4) print(A) print(A[2][0]) print(A[2,1]) print(A[2,:] ...

  5. NumPy 基于已有数据创建数组

    原文:Python Numpy 教程 章节 Numpy 介绍 Numpy 安装 NumPy ndarray NumPy 数据类型 NumPy 数组创建 NumPy 基于已有数据创建数组 NumPy 基 ...

  6. python创建数组的方法

    一 直接定义法: 1.直接定义 matrix=[0,1,2,3] 2.间接定义 matrix=[0 for i in range(4)] print(matrix) 二 Numpy方法: Numpy内 ...

  7. Numpy 学习之路(1)——数组的创建

    数组是Numpy操作的主要对象,也是python数据分析的主要对象,本系列文章是本人在学习Numpy中的笔记. 文章中以下都基于以下方式的numpy导入: import numpy as np fro ...

  8. numpy学习之创建数组

    1.使用array函数创建数组 import numpy as np ndarray1 = np.array([1, 2, 3]) array([1, 2, 3]) ndarray2 = np.arr ...

  9. NumPy学习2:创建数组

    1.使用array创建数组 b = array([2, 3, 4])print bprint b.dtype 2.把序列转化为数组 b = array( [ (1.5,2,3), (4,5,6) ] ...

随机推荐

  1. P1164 小A点菜【dp】

    P1164 小A点菜 提交 43.03k 通过 24.37k 时间限制 1.00s 内存限制 125.00MB 题目提供者洛谷 难度普及- 历史分数100 提交记录 查看题解 标签 洛谷原创   查看 ...

  2. dataTables插件的使用

    用到dataTables这个插件还是因为Metronic这个框架里有用到,不然我不会选择它的,为啥呢?就感觉它的文档有点复杂(当然,也有我智商不够用的原因):既然用了,那就说说我遇到的问题吧,以防下次 ...

  3. 占位 RK

    占位 RK include: RK403 RK404

  4. Vue中v-show和v-if的使用以及区别

    个人博客 地址:http://www.wenhaofan.com/article/20190321143330 v-if 1.v-if 根据条件渲染,它会确保在切换过程中条件块内的组件销毁和重建    ...

  5. python:创建文件

    #!/usr/bin/python# -*- coding:utf-8 -*- open('a.txt','w+')

  6. webscarab

    1.功能 WebScarab是一个用来分析使用HTTP和HTTPS协议的应用程序框架.其原理很简单,WebScarab可以记录它检测到的会话内容(请求和应答),并允许使用者可以通过多种形式来查看记录. ...

  7. 1.game.h

    game.h //以后会一直更新的呢. /*2020.2.4 更新了文件输入输出模板 @Bill_liu2020 加入了visual.h @bingogyz(orz) 代码:https://blog. ...

  8. html集合

    <!DOCTYPE> //声明文档类型 <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前. <!DOCTYPE> ...

  9. Spark 中 GroupByKey 相对于 combineByKey, reduceByKey, foldByKey 的优缺点

    避免使用GroupByKey 我们看一下两种计算word counts 的方法,一个使用reduceByKey,另一个使用 groupByKey: val words = Array("on ...

  10. Python之xml读写

    遇到问题xml文件读写,没有子节点需要新建ChildNode. # -*- coding: utf-8 -*- import os import shutil import xml.dom.minid ...