草庐IT

指数值

全部标签

python - 估计幂律分布中的指数截断

因为我一直在做一些社交网络分析,所以我偶然发现了在网络度上拟合概率分布的问题。因此,我有一个概率分布P(X>=x),从目测来看,它遵循具有指数截断的幂律而不是纯幂律(直线)。因此,假定具有指数截断的幂律分布方程为:f(x)=x**alpha*exp(beta*x)我如何使用Python估计参数alpha和beta?我知道scipy.stats.powerlaw包存在并且它们有一个.fit()函数,但它似乎没有完成这项工作,因为它只返回绘图的位置和比例,哪个似乎只对正态分布有用?这个包的教程也不够。附言我很清楚CLausetetal的实现但它们似乎没有提供估计交替分布参数的方法。

python - 如何将 pythons Decimal() 类型转换为 INT 和指数

我想在python中使用Decimal()数据类型并将其转换为整数和指数,这样我就可以将该数据发送到具有完全精度和小数控制的微Controller/plc。https://docs.python.org/2/library/decimal.html我已经让它工作了,但是它很老套;有谁知道更好的方法?如果不是,我会采取什么途径自己编写较低级别的“as_int()”函数?示例代码:fromdecimalimport*d=Decimal('3.14159')t=d.as_tuple()ift[0]==0:sign=1else:sign=-1digits=t[1]theExponent=t[2

以适当的单位返回函数值的 Pythonic 方法

目标:以调用者请求的单位(或任何微不足道的修改)从函数返回一个值。背景:我在RaspberryPi3上运行Python2.7,并使用函数distance()获取旋转编码器转动的距离。根据调用函数的位置,我需要不同单位的距离。那么,这应该如何以Python方式编写(即简短且易于维护)。第一次尝试:我的第一个尝试是在函数中使用单位米,并有一个很长的elif树来选择要返回的正确单位。defdistance(units='m'):my_distance=read_encoder()ifunits=='m':returnmy_distance*1.000elifunits=='km':retur

python - mat 不是数值元组 : openCV error

我已经写下了显示错误的代码,但我没有得到它:请帮助:它的显示垫不是数字元组:importcvimportcv2capture=cv2.VideoCapture("j.3gp")while(1):_,frame1=capture.read()grayImage1=cv2.cvtColor(frame1,cv2.COLOR_BGR2GRAY)_,frame2=capture.read()grayImage2=cv2.cvtColor(frame2,cv2.COLOR_BGR2GRAY)differenceImage=cv2.absdiff(grayImage1,grayImage2)thr

python - pandas - 具有非数值的 pivot_table? (数据错误 : No numeric types to aggregate)

我正在尝试对包含字符串作为结果的表进行数据透视。importpandasaspddf1=pd.DataFrame({'index':range(8),'variable1':["A","A","B","B","A","B","B","A"],'variable2':["a","b","a","b","a","b","a","b"],'variable3':["x","x","x","y","y","y","x","y"],'result':["on","off","off","on","on","off","off","on"]})df1.pivot_table(values='res

python - 指数曲线拟合的置信区间

我正在尝试获取某些x,y数据(可用here)的指数拟合的置信区间。这是我必须找到最适合数据的指数的MWE:frompylabimport*fromscipy.optimizeimportcurve_fit#Readdata.x,y=np.loadtxt('exponential_data.dat',unpack=True)deffunc(x,a,b,c):'''Exponential3-paramfunction.'''returna*np.exp(b*x)+c#Findbestfit.popt,pcov=curve_fit(func,x,y)printpopt#Plotdataand

python - 我可以在 Python 中按数值对文本进行排序吗?

我在Python中使用以下形式的键进行字典:mydict={'0':10,'1':23,'2.0':321,'2.1':3231,'3':3,'4.0.0':1,'4.0.1':10,'5':11,#...etc'10':32,'11.0':3,'11.1':243,'12.0':3,'12.1.0':1,'12.1.1':2,}有些指数没有子值,有些有一级子值,有些有两级。如果我只有一个子关卡,我可以将它们全部视为数字并按数字排序。第二个子级别迫使我将它们全部作为字符串处理。但是,如果我像字符串一样对它们进行排序,我将在1之后有10,在2之后有20。如何正确排序索引?注意:我真正想做

python - 在 x 轴上绘制非数值数据(例如,日期)

我想根据非数值数据绘制数值数据,这样说:importmatplotlib.pyplotasplx=['a','b','c','d']y=[1,2,3,4]pl.plot(x,y)但是,使用matplotlib绘图包时,您会收到一条警告,指出数据不是float的(ValueError:float()的无效文字:a)。在他们的'How-to',他们建议先将数值数据放在x轴上,然后再对其进行格式化。有没有办法直接做到这一点(如上所述)? 最佳答案 使用xticks功能。importmatplotlib.pyplotasplxticks=[

python - 在 Python 中求解数值 ODE

如何在Python中对ODE进行数值求解?考虑\ddot{u}(\phi)=-u+\sqrt{u}满足以下条件u(0)=1.49907和\dot{u}(0)=0有限制0最后,我想生成一个参数图,其中x和y坐标是作为u的函数生成的。问题是,我需要运行odeint两次,因为这是一个二阶微分方程。我试着让它在第一次运行后再次运行,但它返回时出现雅可比错误。必须有一种方法可以同时运行它两次。这里是错误:odepack.error:ThefunctionanditsJacobianmustbecallablefunctions下面的代码生成的。有问题的行是sol=odeint。importnum

python - 将复数值分配给 numpy 数组?

这给出了预期的结果x=random.rand(1)+random.rand(1)*1jprintx.dtypeprintx,x.real,x.imag这行得通C=zeros((2,2),dtype=complex)C[0,0]=1+1jprintC但是如果我们把它改成C[0,0]=1+1j+x我收到“类型错误:无法将复数转换为float”。如果我们现在省略显式dtype=complex,我会得到“ValueError:用序列设置数组元素”。有人可以解释发生了什么,以及如何做到这一点而不会出错吗?我迷路了。 最佳答案 实际上,所提议的