标签: statistics

如何使用'扫描'功能

当我查看R Packages的源代码时,我会看到sweep常用的函数.有时候,当一个更简单的函数已经足够时(例如,apply),它会被使用,有时,如果不花费相当多的时间来逐步执行代码块,就不可能确切地知道它在做什么.

我可以sweep使用更简单的函数重现效果的事实表明我不理解sweep核心用例,并且这个函数经常使用的事实表明它非常有用.

上下文:

sweep是R标准库中的一个函数; 它的论点是:

sweep(x, MARGIN, STATS, FUN="-", check.margin=T, ...)

# x is the data
# STATS refers to the summary statistics which you wish to 'sweep out'
# FUN is the function used to carry out the sweep, "-" is the default
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,参数类似于applysweep需要一个参数,STATS.

另一个关键区别是sweep返回一个与输入数组相同形状的数组,而返回的结果apply取决于传入的函数.

sweep 在行动:

# e.g., use 'sweep' to express a given matrix in …
Run Code Online (Sandbox Code Playgroud)

statistics r

95
推荐指数
3
解决办法
4万
查看次数

几何意义:是否有内置?

我试图找到几何平均值的内置但不能.

(显然,在shell中工作时内置不会保存我,也不会怀疑在准确性上有任何差异;对于脚本,我尝试尽可能多地使用内置函数,其中(累积)性能提升通常是显而易见的.

如果没有一个(我怀疑是这种情况),这里是我的.

gm_mean = function(a){prod(a)^(1/length(a))}
Run Code Online (Sandbox Code Playgroud)

statistics r built-in geometric-mean

94
推荐指数
5
解决办法
7万
查看次数

如何从数据集中删除异常值

我有一些美丽与年龄的多元数据.年龄范围为20-40,间隔为2(20,22,24 ...... 40),并且对于每个数据记录,它们的年龄和美容等级为1-5.当我对这些数据进行箱形图(横跨X轴的年龄,Y轴上的美观评级)时,在每个框的胡须外面都会绘制一些异常值.

我想从数据框本身中删除这些异常值,但我不确定R如何计算其箱形图的异常值.下面是我的数据可能是什么样子的示例. 在此输入图像描述

statistics r outliers

92
推荐指数
8
解决办法
31万
查看次数

单个变量的频率表

今天最后一个新手大熊猫问题:如何为单个系列生成一个表?

例如:

my_series = pandas.Series([1,2,2,3,3,3])
pandas.magical_frequency_function( my_series )

>> {
     1 : 1,
     2 : 2, 
     3 : 3
   }
Run Code Online (Sandbox Code Playgroud)

很多谷歌搜索让我进入了Series.describe()和pandas.crosstabs,但这些都不是我需要的:一个变量,按类别计算.哦,如果它适用于不同的数据类型会很好:字符串,整数等.

python statistics frequency pandas

91
推荐指数
3
解决办法
11万
查看次数

为什么Fibonacci系列用于敏捷计划扑克?

在估计敏捷软件开发中用户故事的相对大小时,团队成员应该估计用户故事的大小为1,2,3,5,8,13 ....... 所以估计的值应该类似斐波那契数列.但我想知道,为什么?

维基百科上的http://en.wikipedia.org/wiki/Planning_poker描述中有一句神秘的句子:

使用Fibonacci序列的原因是为了反映估计较大项目时的固有不确定性.

但为什么大项目存在固有的不确定性?如果我们减少测量,那么不确定性是否更高,这意味着如果更少的人估计相同的故事?即使较大的故事中的不确定性更高,为什么这意味着使用Fibonacci序列?它有数学或统计学原因吗?否则使用Fibonacci系列进行估算对我来说就像CargoCult科学一样.

math statistics agile agile-project-management

90
推荐指数
6
解决办法
12万
查看次数

从样本数据计算置信区间

假设正态分布,我有样本数据,我想计算置信区间.

我已经找到并安装了numpy和scipy软件包,并且已经很难恢复平均值和标准差(numpy.mean(数据),数据是列表).任何关于获得样本置信区间的建议都会非常感激.

python statistics numpy confidence-interval

90
推荐指数
4
解决办法
14万
查看次数

如何计算Python中的累积正态分布

我正在寻找Numpy或Scipy(或任何严格的Python库)中的函数,它将为我提供Python中的累积正态分布函数.

python statistics numpy scipy

88
推荐指数
6
解决办法
11万
查看次数

哪个Git提交统计数据易于提取

以前我很享受TortoiseSvn能够为给定的SVN存储库生成简单的提交统计数据.我想知道Git中有什么可用,我特别感兴趣:

  • 每个用户的提交数量
  • 每个用户更改的行数
  • 随时间变化的活动(例如每周汇总的变化)

有任何想法吗?

git statistics logging code-statistics

87
推荐指数
4
解决办法
6万
查看次数

Scala有一个很好的数学/统计库吗?

我正在为数学和统计学的scala寻找一个好的开源库.希望像Apache Math或Colt这样的东西,但在Scala中实现.

谁能指出我正确的方向?

math statistics scala

87
推荐指数
2
解决办法
2万
查看次数

用于估计统计中位数,模式,偏度,峰度的"在线"(迭代器)算法?

是否有算法来估计值集的中值,模式,偏度和/或峰度,但这不需要一次将所有值存储在内存中?

我想计算基本的统计数据:

  • 平均值:算术平均值
  • 方差:平均偏差的平均值
  • 标准差:方差的平方根
  • 中位数:将较大一半的数字与较小的一半分开的值
  • mode:在集合中找到最频繁的值
  • 偏斜:tl; 博士
  • 峰度:tl; 博士

计算任何这些的基本公式是小学算术,我知道它们.还有许多统计库可以实现它们.

我的问题是我正在处理的集合中的大量(数十亿)值:在Python中工作,我不能只使用数十亿个元素创建列表或哈希.即使我用C语言编写,十亿元素数组也不太实用.

数据未排序.它是由其他过程随机,即时生成的.每组的大小变化很大,并且不会提前知道大小.

我已经弄清楚如何很好地处理均值和方差,以任何顺序迭代集合中的每个值.(实际上,在我的情况下,我按照它们生成的顺序来看它们.)这是我正在使用的算法,礼貌http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#On-line_algorithm:

  • 初始化三个变量:count,sum和sum_of_squares
  • 对于每个值:
    • 增量计数.
    • 将值添加到sum.
    • 将值的平方添加到sum_of_squares.
  • 按计数除以总和,作为变量均值存储.
  • 将sum_of_squares除以count,存储为变量mean_of_squares.
  • 平方均值,存储为square_of_mean.
  • 从mean_of_squares中减去square_of_mean,存储为方差.
  • 输出均值和方差.

这种"在线"算法存在缺陷(例如,精度问题,因为sum_of_squares快速增长大于整数范围或浮点精度),但它基本上给了我所需要的,而不必存储每个集合中的每个值.

但我不知道是否存在类似的技术来估计额外的统计数据(中位数,模式,偏度,峰度).只要处理N值所需的内存远小于O(N),我就可以使用有偏差的估计器,或者甚至是在一定程度上损害精度的方法.

如果库具有"在线"计算这些操作中的一个或多个的功能,那么将我指向现有的统计库也会有所帮助.

algorithm statistics iterator median

84
推荐指数
4
解决办法
3万
查看次数