python---Numpy模块中创建数组的常用方式代码示例
要机器学习,这方面内容不可少。
import numpy as np
import time
# 对比标准python实现和numpy实现的性能差异
def sum_trad():
start = time.time()
X = range(1000000)
Y = range(1000000)
Z = []
for i in range(len(X)):
Z.append(X[i] + Y[i])
return time.time() - start
def sum_numpy():
start = time.time()
X = np.arange(1000000)
Y = np.arange(1000000)
Z = X + Y
return time.time() - start
# print('time trade sum: ', sum_trad(), ' .time numpy sum: ', sum_numpy())
print('=========数组的创建和列表的转换===========')
arr = np.array([2, 6, 5, 9], float)
print(arr)
print(type(arr))
print(arr.tolist())
print(list(arr))
print('=========数组的复制===========')
arr1 = arr
arr2 = arr.copy()
arr[0] = 0
print(arr1)
print(arr2)
print('=========数组的同值填充===========')
arr.fill(1)
print(arr)
print('=========随机选择元素来创建数组===========')
print(np.random.permutation(3))
print(np.random.normal(0, 1, 5))
print(np.random.random(5))
print('=========单位矩阵的创建===========')
print(np.identity(5, dtype=float))
print('=========创建数组,k条对角线上元素为1===========')
print(np.eye(3, k=1, dtype=float))
print('=========创建数组,用1或0填充===========')
print(np.ones((2,3), dtype=float))
print(np.zeros(6, dtype=int))
print('=========数组的创建,类型和维度和现有数组相同===========')
arr = np.array([[13, 32, 31], [64, 25, 76]], float)
print(np.zeros_like(arr))
print(np.ones_like(arr))
print('=========数组的创建, 合并一维数组===========')
arr1 = np.array([1, 3, 2])
arr2 = np.array([3, 4, 6])
print(np.vstack([arr1, arr2]))
print('=========随机从0到1之间均匀分布中选取元素创建数组===========')
print(np.random.rand(2, 3))
print('=========多元正态分布创建数组===========')
print(np.random.multivariate_normal([10, 0], [[3, 1], [1, 4]], size=[5,]))
PS C:\Users\aeonh> & C:/Python37/python.exe c:/test/ml.py =========数组的创建和列表的转换=========== [. . . .] <class 'numpy.ndarray'> [2.0, 6.0, 5.0, 9.0] [2.0, 6.0, 5.0, 9.0] =========数组的复制=========== [. . . .] [. . . .] =========数组的同值填充=========== [. . . .] =========随机选择元素来创建数组=========== [ ] [-1.15120655 0.35107448 -0.47478187 0.67095854 0.68825847] [0.04596957 0.40655295 0.19235859 0.48460268 0.88771739] =========单位矩阵的创建=========== [[. . . . .] [. . . . .] [. . . . .] [. . . . .] [. . . . .]] =========创建数组,k条对角线上元素为1=========== [[. . .] [. . .] [. . .]] =========创建数组,用1或0填充=========== [[. . .] [. . .]] [ ] =========数组的创建,类型和维度和现有数组相同=========== [[. . .] [. . .]] [[. . .] [. . .]] =========数组的创建, 合并一维数组=========== [[ ] [ ]] =========随机从0到1之间均匀分布中选取元素创建数组=========== [[0.38304875 0.4372066 0.91975504] [0.6885767 0.23416509 0.56332644]] =========多元正态分布创建数组=========== [[10.96439198 1.05927544] [12.75575406 -2.3237166 ] [13.5318655 1.29196728] [12.20432062 0.40086517] [ 9.23879038 0.24105831]]
python---Numpy模块中创建数组的常用方式代码示例的更多相关文章
- python基础:os模块中关于文件/目录常用的函数使用方法
Python是跨平台的语言,也即是说同样的源代码在不同的操作系统不需要修改就可以同样实现 因此Python的作者就倒腾了OS模块这么一个玩意儿出来,有了OS模块,我们不需要关心什么操作系统下使用什么模 ...
- os模块中关于文件/目录常用的函数使用方法
os模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir(path) 改变工作目录 listdir(path='.') 列举指定目录中的文件名('. ...
- 18 os/os.path模块中关于文件/目录常用的函数使用方法 (转)
os模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir(path) 改变工作目录 listdir(path='.') 列举指定目录中的文件名('. ...
- Python3:numpy模块中的argsort()函数
Python3:numpy模块中的argsort()函数 argsort函数是Numpy模块中的函数: >>> import numpy >>> help(nu ...
- Java中创建数组的几种方法
Java中创建数组的几种方法 public static void main(String[] args) { //创建数组的第一种方法 int[] arr=new int[6]; int intVa ...
- JavaScript中创建数组的方式!
JavaScript中创建数组的方式! 利用数组字面量 // 1 直接量 console.log(Array.prototype); var arr = [1, 2, 4, 87432]; // 注意 ...
- python之模块ftplib(实现ftp上传下载代码)
# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块ftplib(实现ftp上传下载代码) #需求:实现ftp上传下载代码(不含错误处理) f ...
- [Python]-numpy模块-机器学习Python入门《Python机器学习手册》-01-向量、矩阵和数组
<Python机器学习手册--从数据预处理到深度学习> 这本书类似于工具书或者字典,对于python具体代码的调用和使用场景写的很清楚,感觉虽然是工具书,但是对照着做一遍应该可以对机器学习 ...
- python numpy模块
目录 numpy模块 一维数组 二维数组(用的最多的) 获取多维数组的行和列 多维数组的索引 高级功能 多维数组的元素的替换 通过函数方法创建多维数组 矩阵的运算 点乘和转置(了解) 点乘必须 m*n ...
随机推荐
- oracle 常用命令【创建表空间用户及删除】
/*第1步:创建临时表空间 */ create temporary tablespace ZJY_TEMP tempfile '/usr/u01/app/oradata/orcl/ZJY_TEMP.d ...
- LeetCode 75. 颜色分类(Sort Colors) 30
75. 颜色分类 75. Sort Colors 题目描述 给定一个包含红色.白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色.白色.蓝色顺序排列. 此题中, ...
- LeetCode 139. 单词拆分(Word Break)
139. 单词拆分 139. Word Break
- spring框架学习(二)——注解方式IOC/DI
什么是注解 传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.事物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分 ...
- LeetCode | 142. 环形链表 II
原题(Medium): 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始) ...
- FireDAC 中文字段过滤问题
当使用 FireDAC Filter 过滤数据的时候,通常这样写: FDMemTable.Filtered := False; FDMemTable1.Filter := '姓名=' + strin ...
- es6新特性-解构表达式、Lambda表达式、局部变量及map/reduce方法
循环内的变量在循环外可见,不合理: let定义的变量是局部变量: const修饰的是常量,不允许再次修改,类似于java中的static: 解构表达式:
- yield再理解--绝对够透彻
首先,拿好宝剑: 先把yield看做“return”, 普通的return是什么意思,就是在程序中返回某个值,返回之后程序就不再往下运行了. 看做return之后再把它看做一个是生成器(generat ...
- 基于CentOS6.5的Dubbo及Zookeeper配置
基于CentOS的Dubbo及Zookeeper配置 需要提前准备好的资料: 1.首先配置java环境 步骤: 将jdk的包上传至centos服务器的/opt目录下,并且解压 tar -zxvf jd ...
- java之struts2的执行流程讲解(1)
1.struts2的执行流程 请求--->Tomcat(判读项目是否存在)--->项目的web.xml--->struts2的核心过滤器 --->判读请求的资源(hello.a ...