需要导入的包

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. D - How Many Answers Are Wrong HDU - 3038【带权并查集】

    How Many Answers Are Wrong Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Ja ...

  2. Codeforces Round #619 (Div. 2) A~D题解

    最近网课也开始了,牛客上一堆比赛题目也没补,所以就D题后面的也懒得补了 A.Three String 水题 #include <cstdio> #include <cstring&g ...

  3. linux执行计划任务at命令

    https://www.jianshu.com/p/17f5aa01853f 在linux计划任务中, cron 是周期性运行某任务,假如我只想在未来的某时间点只是要求任务运行一次,这就用到at命令了 ...

  4. mybatis(二):缘由

    本是Apache的一个开源项目iBatis 2010年,iBatis由Apache Software Foundation(软件基金会)迁移到了Google Code(代码托管平台),并改名为MyBa ...

  5. tp3.2框架关闭日志记录

    在config.php中阿计入如下配置: 'LOG_RECORD' => false, // 默认不记录日志 'LOG_TYPE' => 'File', // 日志记录类型 默认为文件方式 ...

  6. 组合数的计算以及组合数对p取余后结果的计算

    前奏:统计 n! 中的所有质因子中pi的个数 普通方法:复杂度O(nlogn), 当n为10的18次方无法承受 // 复杂度O(nlogn), n为10的18次方无法承受 int cal(int n, ...

  7. pytorch save model + Gmatch4py + jupyter debugger + community structure

    1. pytorch, 使用训练好的模型测试自己图片 2. [ pytorch ] ——基本使用:(2) 训练好的模型参数的保存以及调用 3. Gmatch4py 4. Network Analysi ...

  8. C++——一维数组

    6.数组 指针与字符串 6.1 数组 数组是具有一定顺序关系的若干相同类型变量的集合体,组成数组的变量成为数组的元素.数组属于构造类型. 一维数组的声明: 类型说明符 数组名[常量表达式],若int ...

  9. sftp,ftp文件下载

    一.sftp工具类 package com.ztesoft.iotcmp.util; import com.jcraft.jsch.ChannelSftp; import com.jcraft.jsc ...

  10. Python JASON

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于人阅读和编写. http://www.runoob.com/python/python-json.ht ...