我想找到几个(Z)列表的第1,第2,......数字的均值和标准差.例如,我有
A_rank=[0.8,0.4,1.2,3.7,2.6,5.8]
B_rank=[0.1,2.8,3.7,2.6,5,3.4]
C_Rank=[1.2,3.4,0.5,0.1,2.5,6.1]
# etc (up to Z_rank )...
Run Code Online (Sandbox Code Playgroud)
现在我想取平均值和标准值*_Rank[0],平均值和标准值*_Rank[1]等
(即:所有(A..Z)_rank列表中第1位
的平均值和标准值;第2位数的平均值和标准值所有(A..Z)_rank列表;
第三位数的均值和标准......;等等).
我有一个形状512x512的数组,其中包含第i和第j位置0到100之间的数字.现在我想在其他地方选择数组[i,j] <25和零.我试过array = array[where(array<25)],它给了我一维数组,但我想要2D.请帮我解决这个问题.
嗨我想计算由scipy.polyfit函数计算的斜率和截距误差.我有(+/-)ydata的不确定性所以如何将其包括在计算斜率和截距的不确定性?我的代码是,
from scipy import polyfit
import pylab as plt
from numpy import *
data = loadtxt("data.txt")
xdata,ydata = data[:,0],data[:,1]
x_d,y_d = log10(xdata),log10(ydata)
polycoef = polyfit(x_d, y_d, 1)
yfit = 10**( polycoef[0]*x_d+polycoef[1] )
plt.subplot(111)
plt.loglog(xdata,ydata,'.k',xdata,yfit,'-r')
plt.show()
Run Code Online (Sandbox Code Playgroud)
非常感谢
我想旋转一个数组但不是整体,只是它的一小部分.我有512X512阵列(基本上它是中心的高斯圆(150,150),半径为200).现在我想将阵列的小部分(中心(150,150),半径为100)旋转90度.最初我使用numpy rot90模块,但它旋转每个数组元素,这不是我想要的.如有任何反馈,我将不胜感激.
谢谢
-Viral
我希望使用具有常数因子的幂律来拟合我的x和y数据.我的幂律模型是y(r)= F0 + F*(r)**alpha其中F0是常数.我的代码是,
x = [0.015000000000000001, 0.024999999999999998, 0.034999999999999996, 0.044999999999999998, 0.055, 0.065000000000000002, 0.075000000000000011, 0.085000000000000006, 0.094999999999999987, 0.125, 0.17500000000000002, 0.22500000000000003, 0.27500000000000002]
y= [5.6283727993522774, 4.6240796612752799, 3.7366642904247769, 3.0668203445969828, 2.5751865553847577, 2.0815063796430979, 1.7152655187581032, 1.4686235817532258, 1.2501921057958358, 0.80178306738561222, 0.43372429238424598, 0.26012305284446235, 0.19396186239328625]
def func(x,m,c,c0):
return c0 + x**m * c
coeff,var=curve_fit(func,x,y)
print coeff
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.6/dist-packages/scipy/optimize/minpack.py", line 511, in curve_fit
raise RuntimeError(msg)
RuntimeError: Optimal parameters not found: Number of calls to function has reached maxfev = 800.
Run Code Online (Sandbox Code Playgroud)
然后我改变了maxfev = …
我想生成 1024x1024 的二维数组,从 (275.79905,64.215746) 到 (275.14172,64.500187) 而不是 (0,0) 到 (1024,1024)。我知道linspace可以生成它,但是如何使用它制作二维数组?