python-numpy的基本用法01
来源:互联网 发布:网站源码打包下载 编辑:程序博客网 时间:2024/05/22 11:30
python-numpy的基本用法01
- NumPy是Python语言的一个扩充程序库。支持高级大量的维度数组与矩阵运
算,此外也针对数组运算提供大量的数学函数库 - 官网链接:http://www.numpy.org/
- 下载安装
linux下直接pip install 即可
windows下https://sourceforge.net/projects/numpy/files/NumPy/1.8.1/
基本用法
1、创建数组
coding:utf-8
import numpy as np#1维数组创建data = [1, 2, 3, 4, 5]arr = np.array(data)print('元素类型' + str(arr.dtype))print arrprint '*' * 50#2维数组的创建data = [[1,2,3,4], [5,6,7,8]]arr = np.array(data);print('元素的维度' + str(arr.shape))print arrprint '*' * 50print np.zeros((5,6))print '*' * 50print np.empty((3,4)) #生成2*3*2的三维数组,所有元素未初始化。print '*' * 50print np.arange(15)
输出:1
元素类型int32[1 2 3 4 5]**************************************************元素的维度(2, 4)[[1 2 3 4] [5 6 7 8]]**************************************************[[ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.]]**************************************************[[ 3.56812815e-295 2.10814249e-294 2.14383646e-294 2.14491158e-294] [ 2.14605837e-294 2.40157849e-294 4.00245561e-294 4.26941978e-294] [ 4.27200006e-294 4.27357691e-294 4.40512377e-294 4.47593777e-091]]**************************************************[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14]
2、数组的索引和切片
#coding:utf-8import numpy as npfrom creatingNpArrays import arr#数组的索引arr = np.array([[1,2,3], [4,5,6], [7,8,9]])print arrprint arr[1] # [4,5,6]print arr[[0],[0]] # [1]print arr[0][0] # 1print arr[0][0] + arr[0, 0] # 1+1print '*' * 50arr = np.array([[[1,2,3],[4,5,6],[7,8,9]]])print arr#三维数组print arr[0] #二维数组print arr[0, 0]oldArr = arr[0].copy()arr[0] = 55print arrprint '*' * 50# 数组的切分arr = np.array([1,2,3,4,5])print arr[0:2]arr = np.array([[1,2,3], [4,5,7], [6,7,8]])print arrprint arr[:, :2] #[)arr[0, :] = 0print arrprint '*' * 50# boolean索引arrBool = np.array([True, False, False, True, False])arr = np.array([1,2,3,4,5])print arr[arrBool]arr = np.random.randn(6,5)print arrprint arr[:2, arrBool]arr[:2, arrBool] = 8;print arrprint '*' * 50# 花式索引arr = np.empty((8, 4))for i in range(8): for j in range(4): arr[[i], [j]] = (j)+i*4print arrprint arr[[0,1,2]] #打印相应的行 二维数组 相当于arr[:3, :]print arr[[0,1,2],[0,1,2]] # [ 0. 5. 10.]print arr[[0,1,2]][:, [0,1,2]] # [[ 0. 1. 2.]# [ 4. 5. 6.]# [ 8. 9. 10.]]
输出:
元素类型int32[1 2 3 4 5]**************************************************元素的维度(2, 4)[[1 2 3 4] [5 6 7 8]]**************************************************[[ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.] [ 0. 0. 0. 0. 0. 0.]]**************************************************[[ 2.25678077e-295 1.30483694e-294 1.32268392e-294 1.32322148e-294] [ 1.32379488e-294 1.45155494e-294 2.45994554e-294 3.68226108e-294] [ 3.68484136e-294 3.68641821e-294 3.81796507e-294 4.47593777e-091]]**************************************************[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14][[1 2 3] [4 5 6] [7 8 9]][4 5 6][1]12**************************************************[[[1 2 3] [4 5 6] [7 8 9]]][[1 2 3] [4 5 6] [7 8 9]][1 2 3][[[55 55 55] [55 55 55] [55 55 55]]]**************************************************[1 2][[1 2 3] [4 5 7] [6 7 8]][[1 2] [4 5] [6 7]][[0 0 0] [4 5 7] [6 7 8]]**************************************************[1 4][[ 1.59025666 0.60323342 -0.31831454 -0.46765416 0.19817061] [-1.54605694 -0.39970578 -1.43594165 -0.22848042 0.17555307] [-0.39047187 -1.50432276 0.88895238 0.44017938 0.85532183] [ 0.97128454 1.22729238 -2.62130004 -0.68342569 -0.83079104] [-1.58279788 0.32233654 -1.55457258 -1.10925867 0.72559114] [ 1.07697202 0.71196755 -0.37600462 -2.00553329 -1.82509433]][[ 1.59025666 -0.46765416] [-1.54605694 -0.22848042]][[ 8. 0.60323342 -0.31831454 8. 0.19817061] [ 8. -0.39970578 -1.43594165 8. 0.17555307] [-0.39047187 -1.50432276 0.88895238 0.44017938 0.85532183] [ 0.97128454 1.22729238 -2.62130004 -0.68342569 -0.83079104] [-1.58279788 0.32233654 -1.55457258 -1.10925867 0.72559114] [ 1.07697202 0.71196755 -0.37600462 -2.00553329 -1.82509433]]**************************************************[[ 0. 1. 2. 3.] [ 4. 5. 6. 7.] [ 8. 9. 10. 11.] [ 12. 13. 14. 15.] [ 16. 17. 18. 19.] [ 20. 21. 22. 23.] [ 24. 25. 26. 27.] [ 28. 29. 30. 31.]][[ 0. 1. 2. 3.] [ 4. 5. 6. 7.] [ 8. 9. 10. 11.]][[ 0. 1. 2. 3.] [ 4. 5. 6. 7.] [ 8. 9. 10. 11.]][ 0. 5. 10.][[ 0. 1. 2.] [ 4. 5. 6.] [ 8. 9. 10.]]
阅读全文
0 0
- python-numpy的基本用法01
- python-numpy的基本用法02
- python-numpy的基本用法03
- python 数据处理第一章 numpy库的基本用法
- python numpy基础(一)基本用法
- python之numpy的用法
- numpy的基本用法(三)——numpy的索引
- numpy学习笔记一:numpy的基本用法
- numpy的基本用法(四)——numpy array合并
- numpy的基本用法(五)——numpy array分割
- numpy.random 的函数基本用法
- Python教程:numpy的基本介绍
- Python中numpy的基本统计学
- python之numpy的基本使用
- python之numpy的基本使用
- python之numpy的基本使用
- numpy基本用法
- numpy基本用法
- 介绍了如何取成员函数的地址以及调用该地址
- JAVASCRIPT面向对象编程(一)
- react路由
- sizeof() 、strlen()、str.length的区分
- 包装类的equals和==
- python-numpy的基本用法01
- Servlet的线程安全问题
- 设计模式之单例模式
- JSONObject处理Date类型 java.sql.Date 转化java.util.Date 问题
- Computer Networking——network layer QA
- 使用Afl-fuzz (American Fuzzy Lop) 进行fuzzing测试(四)——直接对二进制进行fuzzing
- 关于事务 --- 丢失更新
- android开发之为listview绑定数据的三种方式
- ES6中的Set和Map集合