我的csv文件包含离散和连续变量,我想找到“模型方程”,它根据我的离散变量(x,y,z)来解释我的连续变量(a);->a=f(x,y,z).The问题是我正在尝试这个代码,但它失败了。当我想要查看打印结果(f_value,p_value stats.f_oneway = (x,y,z))时,我得到nan,nan。摘自我的代码:
from numpy import (genfromtxt,hstack,arange)
#Pr linear regression
from scipy import stats
import scipy
#Pr ANOVA
from statsmodels.stats.multicomp import (pairwise_tukeyhsd,MultiComparison)
from pylab import savefig
from matplotlib.pyplot import (figure,setp)
fname="G:/table.csv"
my_data = genfromtxt(fname,delimiter=',')
#Transformation of file into table
x= my_data[:,3]
y= my_data[:,4]
z= my_data[:,6]
#one way anova
[f_value, p_value] = stats.f_oneway(x, y, z)我想估计模型R=u+f(x,y,z)+ e,其中R(连续变量),u(常数),e(测量误差)。我想知道离散变量如何影响我的连续结果的系数。
发布于 2013-08-14 17:19:52
我最好的猜测是您的数据包含NaN值或坏值。你可以试着用下面的代码来检测:
for i in range(1,len(x)):
(f_val,p_val) = stats.f_oneway(x[:i],y[:i],z[:i])
if numpy.isnan(f_val) or numpy.isnan(p_val):
print i-1,x[i-1],y[i-1],z[i-1],f_val,p_valhttps://stackoverflow.com/questions/18227576
复制相似问题