Questions tagged «scipy»

1
Beta安装在Scipy中
根据维基百科,β概率分布具有两个形状参数:和β。αα\alphaββ\beta 当我打电话scipy.stats.beta.fit(x)在Python,其中x是在范围内的一串数字,则返回4个值。这让我感到奇怪。[0,1][0,1][0,1] 谷歌搜索后,我发现返回值之一必须是“位置”,因为如果我调用,第三个变量为0 scipy.stats.beta.fit(x, floc=0)。 有谁知道第四个变量是什么,并且前两个变量是和β吗?αα\alphaββ\beta

1
PCA和TruncatedSVD的scikit-learn实现之间的区别
我了解主成分分析和奇异值分解在代数/精确水平之间的关系。我的问题是关于scikit-learn的实现。 该文档说:“ [TruncatedSVD]与PCA非常相似,但是直接对样本矢量进行运算,而不是对协方差矩阵进行运算。 ”,这将反映两种方法之间的代数差异。但是,后来又说:“ 此估算器[TruncatedSVD]支持两种算法:快速随机SVD求解器,和“天真”算法,该算法使用ARPACK作为(X * XT)或(XT * X)上的特征求解器,高效。关于PCA,它表示:“使用数据的奇异值分解来投影以减少线性维数……”。PCA实施支持相同的两种算法(随机和ARPACK)求解器以及另一种算法LAPACK。查看代码,我可以看到PCA和TruncatedSVD中的ARPACK和LAPACK都对样本数据X进行了svd,ARPACK能够处理稀疏矩阵(使用svds)。 因此,除了具有不同的属性和方法之外,PCA还可以使用LAPACK进行精确的全奇异值分解,PCA和TruncatedSVD scikit-learn实现似乎是完全相同的算法。第一个问题:这是正确的吗? 第二个问题:即使LAPACK和ARPACK使用scipy.linalg.svd(X)和scipy.linalg.svds(X)作为X样本矩阵,它们也会计算或X的奇异值分解或特征分解∗ X T内部。虽然“随机化”的求解器不需要计算乘积。(这与数值稳定性有关,请参阅为什么通过数据的SVD对数据进行PCA?)。这个对吗?XT∗XXT∗XX^T*XX∗XTX∗XTX*X^T 相关代码:PCA行415。截断SVD行137。
12 pca  scikit-learn  svd  scipy 

2
Kolmogorov–Smirnov检验:随着样本量的增加,p值和ks检验的统计量减少
为什么p值和ks检验统计量会随着样本数量的增加而减少?以以下Python代码为例: import numpy as np from scipy.stats import norm, ks_2samp np.random.seed(0) for n in [10, 100, 1000, 10000, 100000, 1000000]: x = norm(0, 4).rvs(n) y = norm(0, 4.1).rvs(n) print ks_2samp(x, y) 结果是: Ks_2sampResult(statistic=0.30000000000000004, pvalue=0.67507815371659508) Ks_2sampResult(statistic=0.080000000000000071, pvalue=0.89375155241057247) Ks_2sampResult(statistic=0.03499999999999992, pvalue=0.5654378910227662) Ks_2sampResult(statistic=0.026599999999999957, pvalue=0.0016502962880920896) Ks_2sampResult(statistic=0.0081200000000000161, pvalue=0.0027192461984023855) Ks_2sampResult(statistic=0.0065240000000000853, pvalue=6.4573678008760032e-19) 凭直觉,我理解随着n的增长,测试“更加确定”了两种分布是不同的。但是,如果样本量很大,那么在诸如此类的相似性测试(如安德森·达林检验)或t检验中有什么意义,因为在这种情况下,当n很大时,总会发现分布是“明显”不同!?现在我想知道p值的意义到底是什么。它在很大程度上取决于样本量...如果p> 0.05而您希望降低样本量,则只需获取更多数据即可。如果p <0.05且您希望它更高,则删除一些数据。 同样,如果两个分布相同,则ks检验统计量将为0,p值为1。但是在我的示例中,随着n的增加,ks检验统计量表明分布随时间变得越来越相似(减小)。 ,但根据p值,它们会随着时间变得越来越多(也有所减少)。

4
在R与SciPy中拟合对数正态分布
我已经使用R与一组数据拟合了对数正态模型。结果参数为: meanlog = 4.2991610 sdlog = 0.5511349 我想将此模型转移到Scipy,这是我以前从未使用过的模型。使用Scipy,我可以得到1和3.1626716539637488488 + 90的形状和比例-非常不同的数字。我也尝试过使用meanlog和sdlog的exp,但是继续得到奇怪的图形。 我已经阅读了所有关于scipy的文档,但是对于这种情况下的形状和比例参数仍然感到困惑。自己编写该函数是否有意义?不过,这似乎容易出错,因为我是scipy的新手。 SCIPY对数正态(BLUE)与R对数正态(RED): 对采取什么方向有任何想法吗?顺便说一下,这些数据非常适合R模型,因此,如果看起来像Python中的其他内容,请随时共享。 谢谢! 更新: 我正在运行Scipy 0.11 这是数据的子集。实际样本为38k +,平均值为81.53627: 子集: x [60,170,137,138,81,140,78,46,1,168,138,148,145,35,82,126,66,147,88,106,80,54,83,13, 102、54、134、34 ] numpy.mean(x) 99.071428571428569 或者: 我正在研究捕获pdf的功能: def lognoral(x, mu, sigma): a = 1 / (x * sigma * numpy.sqrt(2 * numpy.pi) ) b = - (numpy.log(x) - mu) …
10 r  python  numpy  scipy 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.