np.eye()以及np.identity()

2024-02-11 13:58
文章标签 np identity eye

本文主要是介绍np.eye()以及np.identity(),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、np.eye()
1. 函数的原型:numpy.eye(N,M=None,k=0,dtype=<class 'float'>,order='C)

返回的是一个二维2的数组(N,M),对角线的地方为1,其余的地方为0.

参数介绍:

(1)N:int型,表示的是输出的行数

(2)M:int型,可选项,输出的列数,如果没有就默认为N

(3)k:int型,可选项,对角线的下标,默认为0表示的是主对角线,负数表示的是低对角,正数表示的是高对角。

(4)dtype:数据的类型,可选项,返回的数据的数据类型

(5)order:{‘C’,‘F'},可选项,也就是输出的数组的形式是按照C语言的行优先’C',还是按照Fortran形式的列优先‘F'存储在内存中

案例:(普通的用法)

import numpy as np
 
a=np.eye(3)
print(a)
 [[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
a=np.eye(4,k=1)
print(a)
 [[0. 1. 0. 0.]
 [0. 0. 1. 0.]
 [0. 0. 0. 1.]
 [0. 0. 0. 0.]]
2. 利用np.eye()生成One-hot向量或one-hot数组用作训练样本标签向量,例如

import numpy as np
 
labels=np.array([[1],[2],[0],[1]])#标签向量

a=np.eye(3)[1]#生成第二类的标签向量[[0. 1. 0.]]

labels转成one-hot形式的结果:
 [[0. 1. 0.]
 [0. 0. 1.]
 [1. 0. 0.]
 [0. 1. 0.]] 
 
labels转化成one-hot后的大小: (4, 3)
          
二、np.identity()
这个函数和之前的区别在于,这个只能创建方阵,也就是N=M

函数的原型:np.identity(n,dtype=None)

参数:n,int型表示的是输出的矩阵的行数和列数都是n

dtype:表示的是输出的类型,默认是float

返回的是nxn的主对角线为1,其余地方为0的数组

这篇关于np.eye()以及np.identity()的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/699959

相关文章

PostgreSQL 报错 because it does not have a replica identity and publishes updates

(update,delete触发,insert不触发)because it does not have a replica identity and publishes updates Hint: To enable updating from the table, set REPLICA IDENTITY using ALTER TABLE 如果相关表涉及了逻辑复制,且对应表没有主键,则需要

可能与不可能的边界 P/NP问题趣史

第一章 金券   假如我们想在数以万计的巧克力中找到一张含有金券的巧克力需要怎么做?(一共有5张金券)   有大量的时间,请大量的人,大量的金钱(买下非常非常多的巧克力),然后人工筛选     Mary的公司定制了一个计划,需要从她的家乡出发,然后经过48个州,并像这些州推销木锥,为了 节省开支,需要定制一个路线,即启动为Mary的家乡,然后经过48个州,距离最短。其实这个计算相   当于 48

P problem、NP problem、NP-complete problem、NP-hard problem是什么

时间复杂度并不是表示一个程序解决问题需要花多少时间,而是当程序所处理的问题规模扩大后,程序需要的时间长度对应增长得有多快。 一、多项式时间(Polynomial time) 多项式复杂度 容易看出,前面的几类复杂度被分为两种级别,其中后者的复杂度无论如何都远远大于前者。 像等,我们把它叫做多项式级复杂度,因为它的规模n出现在底数的位置; 非多项式级的复杂度 另一种像是等,它

NumPy(二):创建数组【生成固定范围的数组:arange、linspace】【生成0和1的数组:zeros()等】【从现有数组生成:array、asarray】【生成随机数组:np.random】

生成0和1的数组 np.ones()np.ones_like()从现有数组中生成 np.array – 深拷贝np.asarray – 浅拷贝 生成固定范围数组 np.linspace() nun – 生成等间隔的多少个 np.arange() step – 每间隔多少生成数据 np.logspace() 生成以10的N次幂的数据 生成随机数组 正态分布 里面需要关注的参数:均值:u

TensorFlow测试程序报异常:FutureWarning: Conversion of the second argument of issubdtype from `float` to `np

使用安装好的tensorflow-gpu 进行程序测试时出现异常: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(

什么是NP问题,什么是NP hard问题,什么是NP完全问题

先来看一个小故事:(转自:http://zhm2k.blog.163.com/blog/static/5981506820095233143571/) 假如老板要你解决一个问题,你绞尽脑汁还是想不出来,叫天天不应,叫地地不灵,这时你走进老板办公室,可以采取3种策略: 1) 一副倒霉像,神情猥琐,可怜巴巴的说:老板,我没做出来,我想我是太蠢了…… boss:蠢材!滚! (失败……) 2)

np.copy()中的C, F含义

多维数组在内存中的存储顺序问题。 以一个二维数组a[2][2]为例,在C语言中,其在内存中存储为 a[0][0] a[0][1] a[1][0] a[1][1] 而在Fortran语言中,其顺序为 a[0][0] a[1][0] a[0][1] a[1][1]

【Numpy】np.unique去重复

numpy.unique(ar, return_index=False, return_inverse=False, return_counts=False, axis=None) 去除重复,返回索引值,排序 >>> np.unique([1, 1, 2, 2, 3, 3])array([1, 2, 3])>>> a = np.array([[1, 1], [2, 3]])>>>

【Numpy】np.savetxt保存时数据不使用科学计数法形式

使用np.savetxt可以dump数据 np.set_printoptions(suppress=True)np.set_printoptions(precision=4) #设精度np.savetxt('data_name‘, data.view(-1, 1), fmt='%.04f') #保留4位小数 numpy在print时会有...省略掉中间部分,如果希望显示处完整数组:

tf.identity 和 tf.control_dependencies的用法

关于 tf.control_dependencies(具体参考博客,也是本文主要参考对象): tf.control_dependencies(control_inputs)设计是用来控制计算流图的,给图中的某些计算指定顺序。比如:我们想要获取参数更新后的值,那么我们可以这么组织我们的代码。 opt = tf.train.Optimizer().minize(loss)with tf.contr