在标题中,我需要在非常大的ndarray上执行onCreate
,假设App
,并将结果存储在App.context
本身。这项操作可以就地执行吗?
答案 0 :(得分:8)
您可以使用out
的可选exp
参数:
a = np.array([3.4, 5])
res = np.exp(a, a)
print(res is a)
print(a)
输出:
True
[ 29.96410005 148.4131591 ]
exp(x [,out])
计算输入数组中所有元素的指数。
返回
out:ndarray 输出数组,元素指数为
x
。
此处a
的所有元素都将替换为exp
的结果。返回值res
与a
相同。没有创建新数组
答案 1 :(得分:4)
Mike Mueller's答案很好,但请注意,如果您的数组类型为dependencies {
compile fileTree(dir: "libs", include: ["*.jar"])
compile project(':react-native-vector-icons')
compile project(':react-native-maps')
compile project(':react-native-fbsdk')
compile "com.android.support:appcompat-v7:23.0.1"
compile "com.facebook.react:react-native:+" // From node_modules
compile(project(":react-native-google-signin")){
exclude group: "com.google.android.gms" // very important
}
compile "com.google.android.gms:play-services-auth:10.0.1" //should be at least 9.0.0
//compile 'com.facebook.android:facebook-android-sdk:4.5.0'
compile "com.facebook.android:facebook-android-sdk:[4,5)"
}
,int32
,int
等,则会引发int64
。因此,一种安全的方法是将您的数组强制转换为TypeError
或float64
等,在执行float32
之前,
exp
Type Casting& EXP:
In [12]: b
Out[12]: array([1, 2, 3, 4, 5], dtype=int32)
In [13]: np.exp(b, b)
--------------------------------------------------------------------------
TypeError: ufunc 'exp' output (typecode 'd') could not be coerced to provided
output parameter (typecode 'i') according to the casting rule ''same_kind''