numpy.polynomial.polynomial.Polynomial我试图获取通过以下方法获得的系数fit:
import numpy.polynomial as poly
x = [1, 2, 3, 4, 5]
y = [16, 42.25, 81, 132.25, 196]
c = poly.Polynomial.fit(x, y, deg = 2)
print(c(5))
print(c)
Run Code Online (Sandbox Code Playgroud)
这个小程序打印
196.00000000000006
poly([81. 90. 25.])
Run Code Online (Sandbox Code Playgroud)
c(5)这是多项式系数(即2.25、7.5和 )的正确值,但不是正确值6.25。如何获得实际系数?
我目前正在使用旧代码,该代码iand使用不同类型的整数作为参数调用函数。下面是代码包含的一个小例子:
program test
integer*1 i
integer j, k
i = 1
j = 8
k = iand(i, j)
print *, k
end program test
Run Code Online (Sandbox Code Playgroud)
gfortran 8 及更早版本作为扩展能够使用不同类型的整数调用 iand(例如,请参阅此处),而此选项在 gfortran 9 中已删除(请参阅此站点)。例如,使用 gfortran 7.5.0:
gfortran-7 -o test test.f90 && ./test
0
Run Code Online (Sandbox Code Playgroud)
但是当用 gfortran 9.2.0 编译时,我得到:
gfortran -o test test.f90
...
Error: Arguments of ‘iand’ have different kind type parameters at (1)
Run Code Online (Sandbox Code Playgroud)
是否有新版本的选项gfortran可以让我按原样使用此代码?
我想知道如何逐元素计算矩阵的阶乘。例如,
import numpy as np
mat = np.array([[1,2,3],[2,3,4]])
np.the_function_i_want(mat)
Run Code Online (Sandbox Code Playgroud)
会给一个矩阵mat2,使得mat2[i,j] = mat[i,j]!。我已经尝试过类似
np.fromfunction(lambda i,j: np.math.factorial(mat[i,j]))
Run Code Online (Sandbox Code Playgroud)
但它会将整个矩阵作为参数传递np.math.factorial。我也尝试过使用,scipy.vectorize但是对于大于10x10的矩阵,我得到一个错误。这是我写的代码:
import scipy as sp
javi = sp.fromfunction(lambda i,j: i+j, (15,15))
fact = sp.vectorize(sp.math.factorial)
fact(javi)
OverflowError: Python int too large to convert to C long
Run Code Online (Sandbox Code Playgroud)
这样的整数将大于2e9,所以我不明白这意味着什么。
我打算做的很简单,但我找不到合适的方法.我有一个函数句柄,它依赖于两个变量,例如:
f = @(i,j) i+j
Run Code Online (Sandbox Code Playgroud)
(但我的情况要复杂得多)
我想做的是创建一个矩阵M
M(i,j) = f(i,j)
Run Code Online (Sandbox Code Playgroud)
当然我可以使用嵌套循环,但我试图避免这些.我已经设法以一种非常简单的方式在Maple中做到了这一点:
f:=(i,j)->i+j;
M:=Matrix(N,f);
Run Code Online (Sandbox Code Playgroud)
(其中N是矩阵的维数)但我需要使用MATLAB.现在我坚持使用嵌套循环,但我非常感谢你的帮助!
matrix ×2
numpy ×2
coefficients ×1
factorial ×1
fortran ×1
function ×1
gfortran ×1
handle ×1
matlab ×1
polynomials ×1
python ×1
type-kinds ×1