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 ...
随机推荐
- [LeetCode] 505. The Maze II 迷宫 II
There is a ball in a maze with empty spaces and walls. The ball can go through empty spaces by rolli ...
- 常用gem
rails_db better_errors awesome_print web-console irbtools binding_of_caller awesome_rails_console
- Eclipse安装Properties Editor插件
安装步骤 1.打开eclispe编辑器help-->install new soft 2.输入软件地址 name:properties editor Location:http://proped ...
- String初解
String 类型是不可变的对象,因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后有一次看到一个代码段,如下: 这段代码返回的是ture,当时以为是f ...
- 讲解JavaScript中对闭包的理解
1.JS中变量的作用域 在理解闭包之前,我们得弄清楚JS中变量的作用域原理,它分为全局作用域和局部作用域,它有一个特点就是局部可以获取全局的声明变量,而全局却不能得到局部声明的变量,我们先来看一个小例 ...
- 【剑指offer】面试题 18. 删除链表的节点
面试题 18. 删除链表的节点
- API总结
1. 什么是Webservice WebService就是一个应用程序向外界暴露出一个能通过Web进行调用的API,也就是说能用编程的方法通过 Web 来调用这个应用程序.我们把调用这个WebServ ...
- linux centos7开机自动启动程序实现
1存放脚本位置 /etc/init.d/ServerManagerCLI.sh 该脚本是自己新建的内容参看2 增加执行权限 chmod +x /etc/rc.d/init.d/ServerManage ...
- Delphi调用爷爷类的方法(自己构建一个procedure of Object)
Delphi通过inherited 可以调用父类的方法,但是没有提供直接调用父类的父类的方法(爷爷类),通过变通的方式实现如下: 假设父类是TFather,爷爷类TGrand,调用爷爷类的Write方 ...
- Oracle数据库常用语法
基本 --新建表:create table table1( id varchar(300) primary key, name varchar(200) not null); --插入数据 inser ...