本文将分享pythonnumpy.where的详细内容,并且还将对如何工作?进行详尽解释,此外,我们还将为大家带来关于Class.forName()如何工作?、df.combine()如何工作?、no
本文将分享python numpy.where的详细内容,并且还将对如何工作?进行详尽解释,此外,我们还将为大家带来关于Class.forName()如何工作?、df.combine()如何工作?、node.js中的require()如何工作?、NumPy Sum(带轴)如何工作?的相关知识,希望对你有所帮助。
本文目录一览:- python numpy.where()如何工作?(python numpy where)
- Class.forName()如何工作?
- df.combine()如何工作?
- node.js中的require()如何工作?
- NumPy Sum(带轴)如何工作?
python numpy.where()如何工作?(python numpy where)
我正在玩耍numpy
并浏览文档,并且遇到了一些魔术。即我正在谈论numpy.where()
:
>>> x = np.arange(9.).reshape(3, 3)>>> np.where( x > 5 )(array([2, 2, 2]), array([0, 1, 2]))
它们如何在内部实现您能够将类似的东西传递x > 5
给方法的功能?我想这与它有关,__gt__
但是我正在寻找详细的解释。
答案1
小编典典他们如何在内部实现将x> 5之类的内容传递给方法的能力?
简短的答案是他们没有。
对numpy数组进行任何形式的逻辑运算都会返回一个布尔数组。(即__gt__
,,__lt__
等等都返回给定条件为true的布尔数组)。
例如
x = np.arange(9).reshape(3,3)print x > 5
产量:
array([[False, False, False], [False, False, False], [ True, True, True]], dtype=bool)
这就是为什么类似的东西if x > 5:
如果x
是一个numpy数组会引发ValueError的原因。它是True /
False值的数组,而不是单个值。
此外,numpy数组可以由布尔数组索引。例如,在这种情况下,x[x>5]
yields [6 7 8]
。
老实说,您实际需要的很少,numpy.where
但它只返回布尔数组为的索引True
。通常,您可以使用简单的布尔索引执行所需的操作。
Class.forName()如何工作?
我刚刚了解到java.sql
package
。它用于Class.forName()
动态加载扩展的驱动程序DriverManager
。然后我们得到使用DriverManager.getConnection()
方法的连接。
那么整个事情如何运作?
DriverManager类如何知道如何在不使用实际驱动程序的类名的情况下获取连接。
我们也可以将Class.forName()用于自定义应用程序…如果通过示例进行解释,我将非常高兴。
df.combine()如何工作?
来自docs
中的示例take_smaller = lambda s1,s2: s1 if s1.sum() < s2.sum() else s2
这表示如果df1中的序列之和小于df2中的序列之和,则从df1返回序列,否则从df2返回。
因此,当您这样做时:
df1.combine(df2,take_smaller)
A B
0 0 3.0
1 0 0.0
这很好。
但是,当您执行fill_value=-5
时,第一个数据帧中的第二个序列的总和会变小,因为fill_value
首先填充了NaN然后进行比较。 (-5 + 4)-5 and 4。
,fill_value标量值,默认为无 在将任何列传递到合并函数之前用NaN填充的值。
我想您是指doc example
take_smaller = lambda s1,s2: s1 if s1.sum() < s2.sum() else s2
如果是
这里您使用的是fill_value=-5
,因此传递给函数的列B
将是
[-5,4]
和[3,0]
因此-5 + 4 = -1
小于3 + 0 = 3
,因此[-5,4]
返回。
node.js中的require()如何工作?
我尝试了这个:
// mod.js
var a = 1;
this.b = 2;
exports.c = 3;
// test.js
var mod = require('./mod.js');
console.log(mod.a); // undefined
console.log(mod.b); // 2
console.log(mod.c); // 3,so this === exports?
所以我想象require()可能是这样实现的:
var require = function (file) {
var exports = {};
var run = function (file) {
// include "file" here and run
};
run.apply(exports,[file]);
return exports;
}
那正确吗?请帮助我了解require()或在哪里可以找到源代码。谢谢!
NumPy Sum(带轴)如何工作?
我已经学会了如何根据自己NumPy
的好奇心来工作。
似乎最简单的功能最难翻译为代码(我理解代码)。对每种情况的每个轴进行硬编码很容易,但是我想找到一种动态算法,可以在任何轴上以n维求和。官方网站上的文档没有帮助(仅显示结果而不显示过程),并且很难浏览Python/ C代码。
注意: 我确实弄清楚了当对一个数组求和时,指定的轴是“已删除”,即,形状为(4,3,2)且轴为1的数组的总和会得出形状为的数组的答案(4,2)
关于python numpy.where和如何工作?的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于Class.forName()如何工作?、df.combine()如何工作?、node.js中的require()如何工作?、NumPy Sum(带轴)如何工作?等相关内容,可以在本站寻找。
本文标签: