数组和标量之间的运算

数组很重,因为它使你不用编写循环即可对数据执行批量运算。这通常叫做矢量化(vectorization)。大小相等的数组之间的任何算术都会将运算应用到元素级。

 1 In [35]: sim = np.array([[1.,2.,3.],[4.,5.,6.]])
 2
 3 In [36]: sim
 4 Out[36]:
 5 array([[ 1.,  2.,  3.],
 6        [ 4.,  5.,  6.]])
 7
 8 In [37]: sim * sim
 9 Out[37]:
10 array([[  1.,   4.,   9.],
11        [ 16.,  25.,  36.]])
12
13 In [38]: sim - sim
14 Out[38]:
15 array([[ 0.,  0.,  0.],
16        [ 0.,  0.,  0.]])
17
18 In [39]: 1 / sim
19 Out[39]:
20 array([[ 1.        ,  0.5       ,  0.33333333],
21        [ 0.25      ,  0.2       ,  0.16666667]])
22
23 In [40]: sim ** 0.5
24 Out[40]:
25 array([[ 1.        ,  1.41421356,  1.73205081],
26        [ 2.        ,  2.23606798,  2.44948974]])
时间: 2024-10-17 09:17:32

数组和标量之间的运算的相关文章

Numpy的array数组和标量之间的运算

矢量化 数组很重要,因为它使你不用编写循环即可对数据执行批量运算.这通常就叫做矢量化(vectorzation) 数组与数组的运算 数组与标量的算术运算

C-函数,数组指针,指针之间的运算

goto原理: 当执行到goto语句的时候, cpu就会跳转到当前函数指定的标志的地方 使用goto也可以实现循环操作 但是在使用的时候,要注意不要造成死循环 一般情况下不建议经常使用goto语句,因为不安全——容易造成死循环 除非在特别确定不会有死循环的情况下,才可以用goto goto不仅可以往前跳,还可以往后跳 使用goto时, 标签代码行的下一行代码不能是声明变量,如果非要写在这个地方,那就在声明变量行前面加一句无意义的代码 标示符:  通俗来讲就是程序员可以自己命名的东西: 变量名,g

c语言中无符号和有符号之间的运算

关于计算机中有符号,无符号数值的表示以及它们之间的运算 是基本知识,但工作这么多年也不敢说完全搞明白透彻. 这几天在将知识点进行了一些梳理,并做了一些有意思的试验. 计算机中,数值的表示和运算都是用补码表示的. 正数的补码就是其本身: 负数的补码则是最高符号位为1,其余位取反加1. 比如-5表示为0xFFFB, 而5则表示为0x0005. 这里,第一个需要注意的问题就是 有符号数和无符号数之间的运算. c语言规定,先一律转成无符号数,然后再进行运算. 比如,  int iValue1 = -5;

在复数类中自定义类型转换函数实现复数和非复数之间的运算

实现复数+double型数据,并且打印运算后实部上的数据 #include <iostream> using namespace std; class Complex { public: Complex( )//定义默认构造函数初始化复数 { real=0; imag=0; } //使用初始化表初始化复数 Complex(double r, double i):real(r),imag(i){} //定义自定义类型转换函数 operator double() { return real; }

byte数组与对象之间的相互转换

在进行网络通信时可能需要传输对象,如果用NIO的话,只能用Bytebuffer和channel直接 通过ByteArray*Stream和Object*Stream可以将byte数组和对象进行相互的转换. 1.byte数组转对象: byte [] data=initData();//初始化byte数组 ByteArrayInputStream inputStream=new ByteArrayInputStream(data); ObjectInputStream oInputStream=ne

#运算符、不同的指针类型、数组和指针、指针运算、堆、栈、静态区、只读区、下标VS指针

#运算符:用于在预编译期将宏参数转换为字符串 #define CONVERS(x)  #x   //注:没用双引号包括. 不同类型的指针占用的内存空间大小相同. 局部变量 定义: a[5]; 打印a[i]时,a[i]为随机数. 若定义a[5]={1,2}; 打印时,a[0]=1;a[1]=2;a[2]=a[3]=a[4]=0; 数组地址与数组名: 1.数组名代表数组首元素的地址.  a=&a[0]; 2.数组的地址需要用取地址符号&才能得到 (&a) 3.数组首元素的地址值与数组的

面试题:在一个数组中有0-99之间的整数101个(数组无序),用高效方法找出其中的唯一的重复元素!

/* * 问题:找出101个数据中重复的元素 * 题目如下:现有0到99,共计100个整数,各不相同,将所有数放入一个数组,随机排布. *        数组长度101,多余的数字是0到99其中任意一个数(唯一重复的数字) *        请将这个重复的数字找出来 * 分析: *    A:把数组构造出来 *    B:把数组元素添加进去 *    C:对数组的元素进去打乱(随机分布) *    D:找出重复的元素 */ 这道题有三种方式:第一种用交换排序找出,第二种求数组的和再减去0-99,

PHP数组和Json之间的互相转换 json_encode() 和 json_decode()

之所以要用到Json,很多时候是因为使用ajax对象时,程序与JS函数之间的数据交互.因为JS不认识PHP中的数组,PHP也不认识JS中的数组或对象.Json很好的解决了这个问题. Json简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript的一个子集,这意味着JavaScript可以直接读取Json,非常方便. Json的具体形式是: 1.对象 对象是一个无序的“‘名称/值’对”集合.一个对象以“{”(左括号)开始,“}

Android开发之数组和List之间的转换

1.List转换成为数组.(这里的List是实体是ArrayList) 调用ArrayList的toArray方法. toArray public <T> T[] toArray(T[] a)返回一个按照正确的顺序包含此列表中所有元素的数组:返回数组的运行时类型就是指定数组的运行时类型.如果列表能放入指定的数组,则返回放入此列表元素的数组.否则,将根据指定数组的运行时类型和此列表的大小分配一个新的数组. 如果指定的数组能容纳列表并有剩余空间(即数组的元素比列表的多),那么会将数组中紧跟在集合末