Numpy的使用规则
之前安装的python版本是3.7
各种库都是自己一个一个下载安装的 很操心 各种缺功能
后来发现了anaconda
啊 真是一个好东西
简单来说 它就是一个涵盖大部分常用库的python包
一次安装终身爽
- 生成NumPy数组
# anaconda发行版 py:3.6.5
# 生成数组
import numpy as np #导入库 x=np.array([1.0,2.0,3.0])
print(x)
print(type(x)) #格式类型
输出:
[1. 2. 3.]
<class 'numpy.ndarray'>
- NumPy的算术运算
x=np.array([1.0,2.0,3.0])
y=np.array([2.0,4.0,6.0])
# 若要计算 数组元素个数需要相同
print(x+y)
print(x-y)
print(x*y)
print(x/y)
输出:
[3. 6. 9.]
[-1. -2. -3.]
[ 2. 8. 18.]
[0.5 0.5 0.5]
- NumPy的N维数组
a=np.array([[1,2],[3,4]])
print(a)
print(a.shape) #得到矩阵a的形状 长*宽
print(a.dtype) #得到矩阵a的数据类型
输出:
[[1 2]
[3 4]]
(2, 2)
int64
- 广播功能
print(a*10) #广播功能 a为2*2矩阵 10为1*1矩阵 将10扩展成为元素相同的2*2矩阵再计算
a=np.array([[1,2],[3,4]])
b=np.array([10,20])
print(a*b) #一维数组b先扩展成为二维数组 再进行计算
输出:
[[10 20]
[30 40]]
[[10 40]
[30 80]]
- 访问元素
- 索引访问
x = np.array([[30,31],[32,33],[35,36]])
print(x)
print(x[0]) #打印第一行
print(x[0][1]) #打印第一行的第二个元素
print('-')
输出:
[[30 31]
[32 33]
[35 36]]
[30 31]
31
2.for循环访问
for row in x:
print(row)
输出:
[30 31]
[32 33]
[35 36]
3.变为数组访问
x=x.flatten() #将x转换为一维数组
print(x)
print(x[np.array([0,2,4])]) #选择出索引为0,2,4的元素 这种方法利于筛选元素
输出:
[30 31 32 33 35 36]
[30 32 35]
Numpy的使用规则的更多相关文章
- [转]numpy性能优化
转自:http://blog.csdn.net/pipisorry/article/details/39087583 http://blog.csdn.net/pipisorry/article/de ...
- NumPy快速入门笔记
我正以Python作为突破口,入门机器学习相关知识.出于机器学习实践过程中的需要,我快速了解了一下NumPy这个科学计算库的使用方法.下面记录相关学习笔记. 简介 NumPy是一个科学计算库.结合Py ...
- NumPy 学习笔记(三)
NumPy 数组操作: 1.修改数组形状 a.numpy.reshape(arr, newshape, order='C') 在不改变数据的条件下修改形状 b.numpy.ndarray.flat 是 ...
- Numpy学习笔记(二)
(1)NumPy - 切片和索引 l ndarray对象中的元素遵循基于零的索引. 有三种可用的索引方法类型: 字段访问,基本切片和高级索引. l 基本切片 Python 中基本切片概念到 n 维 ...
- Numpy 数组操作
Numpy 数组操作 Numpy 中包含了一些函数用于处理数组,大概可分为以下几类: 修改数组形状 翻转数组 修改数组维度 连接数组 分割数组 数组元素的添加与删除 修改数组形状 函数 描述 resh ...
- NumPy v1.15手册汉化
NumPy参考 数组创建 零 和 一 empty(shape[, dtype, order]):返回给定形状和类型的新数组,而不初始化条目 empty_like(prototype[, dtype, ...
- Python之Numpy详细教程
NumPy - 简介 NumPy 是一个 Python 包. 它代表 “Numeric Python”. 它是一个由多维数组对象和用于处理数组的例程集合组成的库. Numeric,即 NumPy 的前 ...
- 一、Numpy库与多维数组
# Author:Zhang Yuan import numpy as np '''重点摘录: 轴的索引axis=i可以理解成是根据[]层数来判断的,0表示[],1表示[[]]... Numpy广播的 ...
- Numpy数组操作
""" Numpy 数组操作 修改数组形状 函数 描述 reshape 不改变数据的条件下修改形状 flat 数组元素迭代器 flatten 返回一份数组拷贝,对拷贝所做 ...
随机推荐
- 流媒体播放器VLC SDL
http://www.cnblogs.com/lihuixian001/archive/2013/03/15/2957103.html https://wiki.videolan.org/Win32C ...
- [SharePoint2010开发入门经典]11、与Office集成
本章概要: 1.创建office集成解决方案使用代码或非代码形式 2.使用内容类型作为能映射到文档库的文档 3.使用InfoPath管理表单 4.使用工作流管理业务流程 5.使用office2010服 ...
- jQuery中实现自己定义方法的扩展
JQuery包装器提供了大量的方法.能够再页面中直接使用.可是.没有 不论什么一个库能够满足全部的需求.所以.JQuery库提供了丰富的扩展功能 .以禁用一组表单元素为例.看看怎么简单有效的在JQue ...
- Android 推断程序在手机中是否是活动状态或者正在执行状态
沈阳斌子在今天项目需求上碰到个这种问题,在Service中须要推断当前的程序是否是活动状态,换句话说也就是说后台跑的服务中有业务需求检測当前程序是否是该服务的程序 这样好让点击推送通知时跳转到不同的页 ...
- hdu 2151
就是一个dp,数组内存的步数, 数组没清空,wa了一次 #include<cstdio> #include<algorithm> #include<cstring> ...
- SPOJ COT2 Count on a tree II (树上莫队)
题目链接:http://www.spoj.com/problems/COT2/ 参考博客:http://www.cnblogs.com/xcw0754/p/4763804.html上面这个人推导部分写 ...
- 没有被广泛采用的box-sizing属性
在标准盒模型下设置的width和height只是内容的宽和高,但在设置了宽和高的情况下若还要设置border.margin.padding等时,会发生溢出的现象,因此需要将盒模型更改. box-siz ...
- jdk7与jdk8环境共存与切换
1,先安装jdk7,配置环境变量JAVA_HOME,然后安装jdk8. 2,安装jdk8后,JAVA_HOME指向未做修改,执行java -version显示还是以前的jdk7版本信息, 3,接下来我 ...
- C#比较二个数组并找出相同或不同元素的方法
这篇文章主要介绍了C#比较二个数组并找出相同或不同元素的方法,涉及C#针对数组的交集.补集等集合操作相关技巧,非常简单实用, 具有一定参考借鉴价值,需要的朋友可以参考下 " }; " ...
- 利用docker构造并运行一个Redis容器
1.首先我们来编写一个基本的Dockerfile 在任意一个目录下 $ vi Dockerfile 内容填写如下: FROM ubuntu:14.04RUN apt-get updateRUN apt ...