我正在构建一个函数来计算给定组件/子系统的可靠性。为此,我用脚本编写了以下内容:
import math as m
import numpy as np
def Reliability (MTBF,time):
failure_param = pow(MTBF,-1)
R = m.exp(-failure_param*time)
return R
该函数对于我在函数中调用的任何时间值都很好。现在我想调用函数来计算给定数组的可靠性,比如np.linspace(0,24,25).但是,我得到了诸如"Type :只有length-1数组可以转换为Python标量“之类的错误。
我使用numpy和matlibplot.pyplot作为库。我用random.normal做了随机数,并对它们进行了总结。然后,我尝试将值计算到数组"sum“中的每个元素。我通过np.zeros创建了一个零数组(浮点类型),然后以如下方式赋值。(代码如下所示)
当我在Google上执行这段代码时,会发生以下错误。
np.random.seed(0)
sum=np.zeros(10,dtype=float)
for i in np.arange(1,11):
X = np.random.normal(size=(10,1))
Y=np.sum(X,axis=1)
据我所知,在某些上下文中,数组被转换为指向其第一个元素的指针:
int a[5];
int * p;
p = a;
遵循这种方法,并考虑到我可以将数组赋给指针,为什么不能将二维数组赋给指向指针的指针呢?
int a[5][5];
int ** q;
q = a;
但是,我可以将一个指针数组分配给一个指向指针的指针:
int * p[5];
int ** q;
q = p;
如果一个数组被转换成指向第一个元素的指针,那么当q= a出现在第二个例子中时,a应该是指向a的指针,a应该是指向a的指针,对吧?
此外,如果我这样做,我不会得到错误:
cout << **a;
提前谢谢你,
我是Python的初学者,我通常用C语言编程。 所以,我有一个numpy 2D数组。我计算(i,j)、(i+1,j)、(i,j+1)和(i+1,j+1)值的平均值,如果该平均值大于某个选定值,则对该平均值求和。 这是我的python代码: Z=np.array([[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]])
sum=0.
value=7.
for i in range(np.shape(Z)[0]-1):
for j in range(np.shape(Z)[1]-1):
a = (Z[i,j] + Z[i+1,j] + Z[
这是密码:
a = tf.constant([1,2,3,4])
b = tf.constant([4])
c = tf.split(a, tf.squeeze(b))
然后,事实证明这是错误的:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/jeff/anaconda2/lib/python2.7/site-packages/tensorflow/python/ops/array_ops.py", line 1
我正在尝试让mnist cnn工作,以便一次对一张图像进行预测。我已经使用了tensorflow教程代码,并尝试在模型中使用estimator.predict,但目前收到错误:
InvalidArgumentError (see above for traceback): Input to reshape is a tensor with 1 values, but the requested shape requires a multiple of 784
[[Node: Reshape = Reshape[T=DT_FLOAT, Tshape=DT_INT32, _device="
我有一个279张图像的数据集,我希望执行批处理大小为4的增强。
import numpy as np
from skimage import io
import os
from PIL import Image
from keras.preprocessing.image import ImageDataGenerator
# Construct an instance of the ImageDataGenerator class
# Pass the augmentation parameters through the constructor.
datagen = ImageD
我有这样的Python代码:
import numpy as np
import matplotlib.pyplot as plt
def f(x):
return np.int(x)
x = np.arange(1, 15.1, 0.1)
plt.plot(x, f(x))
plt.show()
而这样的错误:
TypeError: only length-1 arrays can be converted to Python scalars
我怎么才能修好它?
问题: TrajSimilarity是k个元素的结构,我想把TrajSimilarity(1,k).aLongestString的所有值都放在一个向量/数组A中。我试着使用这个代码,但是它会产生错误,你能帮我解决这个问题吗?
代码:
for k=1:14
A(k)=TrajSimilarity(1,k).aLongestString;
end
错误:
In an assignment A(:) = B, the number of elements in A and B must
be the same
。
我在Keras中有一个多输出模型(准确地说是18个输出),每个输出都有一个损失函数。我试图模仿区域提案网络在更快-RCNN。在培训之前,我希望确保我的模型的梯度是有序的,其中我有一个片段,如下所示:
with tf.GradientTape() as tape:
loss = RegionProposalNetwork.evaluate(first_batch)[0]
t = tape.watched_variables()
grads = tape.gradient(loss, RegionProposalNetwork.trainable_variables)
print(
我有一个依赖于x和y的函数,f(x,y) (返回一个标量),我需要对它进行积分,以便对于一个特定的点(x0,y0),我得到一个函数p(theta),我基本上把它转换成极性,改变原点并在r上积分,所以剩下的函数只依赖to:
%fun = @(x,y) Some function
fun = @(x,y) fun(x+x0,y+y0);
polarfun = @(r,theta) fun(r.*cos(theta),r.*sin(theta)).*r;
p = @(theta) integral(@(r)polarfun(r,theta),0,Inf);
在得到这个函数之后,我需要再次集成它(w.
我有一个包含一列和多行的文本文件(BBB.txt)。我想把所有的数字转换成科学记数法。我尝试如下所示:
z= loadtxt ('BBB.txt')
for i in z:
with open ('ff.txt','w') as h:
y=np.format_float_scientific(z)
h.write("\n".join(map(lambda z: '%f' % z, y)))
我会有一个错误“只有大小为1的数组才能转换成Python标量”。这里的问题是什么?
该
我正在尝试创建一个自定义损失函数,以供Keras使用,但我遇到了一些麻烦。下面是这篇文章:Custom loss function in Keras我知道创建函数的语法,但我不熟悉如何使用张量。我用标量填充了yTrue,yPred是实际的预测值。我想取预测值的对数的加权和,按yTrue中的标量加权。当我这样做的时候: def customLoss(yTrue,yPred):
L = 0
for i in range(len(yTrue)):
L += tf.math.scalar_mul(yTrue[i], K.log(yPred[i]
这是代码清单,我在nests(r,c)=nests(r,c)+stepsize.*randn(size(nests(r,c)));行得到了上面提到的错误,请现在让我看看我的代码有什么问题,因为我刚开始使用matlab。
for r = 1:numb_of_nest % for each particle
for c = 1:4
u=randn(size(nests(r,c)))*sigma;
v=randn(size(nests(r,c)));
step=u./abs(v).^(1/beta);
ne
使用Python2.7中的OpenCV比较两幅图像时,我面临一个问题
这是我的代码:
import cv2
import numpy as np
img1 = cv2.imread("./spot/image1.jpg")
img2 = cv2.imread("./spot/image2.jpg")
diff = cv2.subtract(img1, img2)
result = not np.any(diff)
if result is True:
print "The images are the same"
else:
我对python和pandas都很陌生,所以也许我遗漏了一些东西,但我在网上找不到解决问题的方法。我尝试运行一个函数,该函数应用于在pandas数据frame.The任务的三列上逐行汇总值,这与所描述的完全相同。然而,对于建议的解决方案,我总是得到错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in vecSd
TypeError: only length-1 array
我的代码如下所示(在为循环设置值之前大约有100行代码,这些值似乎正在工作,因此我只包含了必要的值):
fraction=np.array([0.5, 0.3, 0.2])
tauC=np.array([30.,300.,100000.])
dC_memory=np.zeros((1,3))
dC_frac=np.zeros((1,3))
for j in range(0,ens_num):
dC_memory=np.zeros((1,3))
for n in range(0,N-1):
# C02 Concentration
一般情况下,python和代码都是新手,所以请原谅任何明显的错误。我在将城市人口数据(每个国家居住在城市地区的人数(千人))绘制成一张地图时遇到了一些困难。人口数据在CSV文件中,按国家、lat、lon和年份编制索引,年份为1950至2050年。我用def编写了一个函数,这样我就可以输入年份,并按国家获得当年的人口图。我希望标记的大小与每个国家的人口成比例。然而,所绘制的标记大小似乎与国家在名单中的位置成正比,因此,位于名单顶端的国家(按字母顺序排列)有一个较小的标记。任何帮助都将不胜感激。这是代码:
import pandas as pd
from matplotlib.animation
我正在尝试用f2py包装一个简单的C函数。它可以正常编译,但该函数仅返回零。我是C语言的新手,所以我很确定在那里犯了一个愚蠢的错误。
例如,c文件:
#include <stdio.h>
#include <stdlib.h>
void Test(double x, double y)
{
x = y*2;
}
pyf文件:
python module test
interface
subroutine Test(x, y)
intent (c) Test ! is a C function
intent (c)