草庐IT

stat_buf

全部标签

python - 使用 Scipy 的 stats.kstest 模块进行拟合优度测试

我已经通读了有关此模块(和Scipy文档)的现有帖子,但我仍然不清楚如何使用Scipy的kstest模块在您拥有数据集和可调用函数。我要测试我的数据的PDF不是标准的scipy.stats发行版之一,所以我不能只使用类似的东西来调用它:kstest(mydata,'norm')其中mydata是一个Numpy数组。相反,我想做类似的事情:kstest(mydata,myfunc)其中“myfunc”是可调用函数。这不起作用——这不足为奇,因为kstest无法知道“mydata”数组的横坐标是什么,以便使用“myfunc”生成相应的理论频率。假设“mydata”中的频率对应于随机变量的值

python - scipy.stats.uniform 的参数是什么?

我正在尝试在两个数字(下限和上限)之间创建一个均匀分布,以便将其提供给sklearn的ParameterSampler.我正在使用scipy.stats.uniform采用以下格式:fromscipy.statsimportuniformparams=ParameterSampler({'bandwidth':uniform(5,50)},20)但是当我随机选择“带宽”参数时,它们并不都在5到50之间。其中一些比50大一点。所以我的问题是scipy.stats.uniform中的参数代表什么?它们不是下限和上限吗?该文档没有显示任何参数,所以我无法从中弄清楚。

python - 没有位置参数的 scipy.stats.expon.fit()

我正在使用scipy.stats.expon.fit(data)对我的数据进行指数分布拟合。这似乎返回了两个我期望的值。文档online似乎没有说明fit()返回什么,但查看源代码,我猜它既是位置参数又是比例参数。能不能在拟合的时候把location参数固定为0? 最佳答案 在调用expon.fit时,使用floc=0:In[5]:data=expon.rvs(0,1.5,1000)In[6]:loc,scale=expon.fit(data,floc=0)In[7]:scaleOut[7]:1.4878030368336586In

python - scipy.stats.multivariate_normal 提高 `LinAlgError: singular matrix` 即使我的协方差矩阵是可逆的

我在尝试使用scipy.stats.multivariate_normal时遇到问题,希望你们中的某个人能够提供帮助。我有一个2x2矩阵,可以找到使用numpy.linalg.inv()的逆矩阵,但是当我尝试将其用作multivariate_normal中的协方差矩阵时我收到LinAlgError声明它是一个奇异矩阵:In[89]:cov=np.array([[3.2e5**2,3.2e5*0.103*-0.459],[3.2e5*0.103*-0.459,0.103**2]])In[90]:np.linalg.inv(cov)Out[90]:array([[1.23722158e-1

Python os.stat(file_name).st_size 与 os.path.getsize(file_name)

我有两段代码,它们都是为了做同样的事情——坐在一个循环中,直到一个文件被写入完成。它们都主要用于通过FTP/SCP传入的文件。代码的一个版本使用os.stat()[stat.ST_SIZE]:size1,size2=1,0whilesize1!=size2:size1=os.stat(file_name)[stat.ST_SIZE]time.sleep(300)size2=os.stat(file_name)[stat.ST_SIZE]另一个版本使用os.path.getsize():size1,size2=0,0whileTrue:size2=os.path.getsize(file

python - scipy.stats.linregress、numpy.polynomial.polynomial.polyfit 和 statsmodels.api.OLS 之间的差异

这三个函数似乎都可以做简单的线性回归,例如scipy.stats.linregress(x,y)numpy.polynomial.polynomial.polyfit(x,y,1)x=statsmodels.api.add_constant(x)statsmodels.api.OLS(y,x)我想知道这三种方法之间是否有任何真正的区别?我知道statsmodels是建立在scipy之上的,而scipy在很多方面都依赖于numpy,所以我希望它们不会有太大差异,但细节决定成败。更具体地说,如果我们使用上面的numpy方法,我们如何获得其他两种方法默认给出的斜率的p-value?我在Pyt

python - scipy.stats 随机抽取之间的区别....rvs 和 numpy.random

似乎如果它是相同的分布,从numpy.random中抽取随机样本比从scipy.stats.-.rvs中抽取随机样本更快。我想知道是什么导致两者之间的速度差异? 最佳答案 scipy.stats.uniform其实用的是numpy,这里是stats中对应的函数(mtrand是numpy.random的别名)classuniform_gen(rv_continuous):def_rvs(self):returnmtrand.uniform(0.0,1.0,self._size)scipy.stats有一些开销用于错误检查和使接口(in

python 的 scipy.stats.ranksums 与 R 的 wilcox.test

python的scipy.stats.ranksums和R的wilcox.test都应该计算Wilcoxon秩和检验的双侧p值。但是,当我对同一数据运行这两个函数时,我得到的p值相差几个数量级:回复:>x=c(57.07168,46.95301,31.86423,38.27486,77.89309,76.78879,33.29809,58.61569,18.26473,62.92256,50.46951,19.14473,22.58552,24.14309)>y=c(8.319966,2.569211,1.306941,8.450002,1.624244,1.887139,1.3763

Python os.stat 和 unicode 文件名

在我的Django应用程序中,用户上传了一个名称中包含unicode字符的文件。当我下载文件时,我正在调用:os.path.exists(media)测试文件是否存在。反过来,这似乎在呼唤st=os.stat(path)然后出现错误:UnicodeEncodeError:'ascii'编解码器无法对位置92中的字符u'\xcf'进行编码:序号不在范围内(128)我该怎么办?是否有path.exists选项来处理它?更新:实际上,我所要做的就是将参数编码为存在,即。os.path.exists(media.encode('utf-8')感谢所有回答的人。 最佳

sql - sqlite_stat1表的解释

我正在尝试诊断为什么针对SQLite的特定查询速度很慢。关于howthequeryoptimizerworks的信息似乎很多,但关于如何实际诊断问题的信息很少。特别是,当我分析数据库时,我得到了预期的sqlite_stat1表,但我不知道统计列告诉我什么。示例行是:MyTable,ix_id,251121111“251121111”到底是什么意思?作为一个更广泛的问题,是否有人拥有关于诊断SQLite查询性能的最佳工具和技术的任何好的资源?谢谢 最佳答案 来自分析.c:/*Storetheresults.****Theresulti