statistics_statistics_norecompute - CSDN

• 经典的统计学教材，版本为英文版的。内容丰富，值得学习。
• Despite some overlap with the author's undergraduate textbook Statistics and Finance: An Introduction, this book differs from that earlier volume in several important aspects: it is graduate-level;...
• When you perform a hypothesis test in statistics, a p-value helps you determine the significance of your results. Hypothesis tests are used to test the validity of a claim that is made about a...

# P-Value

When you perform a hypothesis test in statistics, a p-value helps you determine the significance of your results. Hypothesis tests are used to test the validity of a claim that is made about a population. This claim that’s on trial, in essence, is called the null hypothesis. The alternative hypothesis is the one you would believe if the null hypothesis is concluded to be untrue. The evidence in the trial is your data and the statistics that go along with it. All hypothesis tests ultimately use a p-value to weigh the strength of the evidence. The p-value is a number between 0 and 1 and interpreted in the following way:

• A small p-value (typically ≤ 0.05) indicates strong evidence against the null hypothesis, so you reject the null hypothesis.
• A large p-value (> 0.05) indicates weak evidence against the null hypothesis, so you fail to reject the null hypothesis.
• p-values very close to the cutoff (0.05) are considered to be marginal (could go either way). Always report the p-value so your readers can draw their own conclusions.
The p-value can be calculated using scipy.stats.ttest_1sam or scipy.stats.ttest_ind function under the Python engine.
展开全文
• 有些统计学术语把握不是特别准确，担心有翻译错的，所以在不确定的地方保留了英文原文，如果有翻译错的也请路过的同行指出，多谢！ 1、mean() 计算平均值 ...>>> statistics.mean(range(1,10))
有些统计学术语把握不是特别准确，担心有翻译错的，所以在不确定的地方保留了英文原文，如果有翻译错的也请路过的同行指出，多谢！
1、mean()
计算平均值
>>> import statistics
>>> statistics.mean([1, 2, 3, 4, 5, 6, 7, 8, 9])
5.0
>>> statistics.mean(range(1,10))
5.0
>>> import fractions
>>> x = [(3, 7), (1, 21), (5, 3), (1, 3)]
>>> y = [fractions.Fraction(*item) for item in x]
>>> y
[Fraction(3, 7), Fraction(1, 21), Fraction(5, 3), Fraction(1, 3)]
>>> statistics.mean(y)
Fraction(13, 21)
>>> import decimal
>>> x = ('0.5', '0.75', '0.625', '0.375')
>>> y = map(decimal.Decimal, x)
>>> y
<map object at 0x00000000033465C0>
>>> list(y)
[Decimal('0.5'), Decimal('0.75'), Decimal('0.625'), Decimal('0.375')]
>>> statistics.mean(y)
Traceback (most recent call last):
File "<pyshell#411>", line 1, in <module>
statistics.mean(y)
File "C:\Python 3.5\lib\statistics.py", line 292, in mean
raise StatisticsError('mean requires at least one data point')
statistics.StatisticsError: mean requires at least one data point
>>> list(y)
[]
>>> y = map(decimal.Decimal, x)
>>> statistics.mean(y)
Decimal('0.5625')
2、median()、median_low()、median_high()、median_grouped()
各种中位数
>>> statistics.median([1, 3, 5, 7])
4.0
>>> statistics.median_low([1, 3, 5, 7])
3
>>> statistics.median_high([1, 3, 5, 7])
5
>>> statistics.median([1, 3, 7])
3
>>> statistics.median([5, 3, 7])
5
>>> statistics.median(range(1,10))
5
>>> statistics.median_low([5, 3, 7])
5
>>> statistics.median_high([5, 3, 7])
5
>>> statistics.median_grouped([5, 3, 7])
5.0
>>> statistics.median_grouped([5, 3, 7, 1])
4.5
>>> statistics.median_grouped([52, 52, 53, 54])
52.5
>>> statistics.median_low([52, 52, 53, 54])
52
>>> statistics.median_high([52, 52, 53, 54])
53
>>> statistics.median_high([1, 3, 3, 5, 7])
3
>>> statistics.median_low([1, 3, 3, 5, 7])
3
>>> statistics.median_grouped([1, 3, 3, 5, 7])
3.25
>>> statistics.median_grouped([1, 2, 2, 3, 4, 4, 4, 4, 4, 5])
3.7
>>> statistics.median_grouped([1, 2, 2, 3, 4, 4, 4, 4, 4, 5], interval=2)
3.4
3、mode()
返回最常见数据或出现次数最多的数据（most common data）
>>> statistics.mode([1, 3, 5, 7])
Traceback (most recent call last):
File "<pyshell#435>", line 1, in <module>
statistics.mode([1, 3, 5, 7])
File "C:\Python 3.5\lib\statistics.py", line 434, in mode
'no unique mode; found %d equally common values' % len(table)
statistics.StatisticsError: no unique mode; found 4 equally common values
>>> statistics.mode([1, 3, 5, 7, 3])
3
>>> statistics.mode([1, 3, 5, 7, 3, 5])
Traceback (most recent call last):
File "<pyshell#437>", line 1, in <module>
statistics.mode([1, 3, 5, 7, 3, 5])
File "C:\Python 3.5\lib\statistics.py", line 434, in mode
'no unique mode; found %d equally common values' % len(table)
statistics.StatisticsError: no unique mode; found 2 equally common values
>>> statistics.mode([1, 3, 5, 7, 3, 5, 5])
5
>>> statistics.mode(["red", "blue", "blue", "red", "green", "red", "red"])
'red'
>>> statistics.mode(list(range(5)) + [3])
3
4、pstdev()
返回总体标准差（population standard deviation ，the square root of the population variance)。
>>> statistics.pstdev([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
0.986893273527251
>>> statistics.pstdev(range(20))
5.766281297335398
>>> statistics.pstdev([1, 2, 3, 4, 5, 10, 9, 8, 7, 6])
2.8722813232690143
5、pvariance()
返回总体方差（population variance）或二次矩（second moment）。
>>> statistics.pvariance([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
0.9739583333333334
>>> statistics.pvariance([1, 2, 3, 4, 5, 10, 9, 8, 7, 6])
8.25
>>> x = [1, 2, 3, 4, 5, 10, 9, 8, 7, 6]
>>> mu = statistics.mean(x)
>>> mu
5.5
>>> statistics.pvariance([1, 2, 3, 4, 5, 10, 9, 8, 7, 6], mu)
8.25
>>> statistics.pvariance(range(20))
33.25
>>> statistics.pvariance((random.randint(1,10000) for i in range(30)))
10903549.933333334
6、variance()、stdev()
计算样本方差（sample variance）和样本标准差（sample standard deviation，the square root of the sample variance，也叫均方差）。
>>> statistics.variance((random.randint(1,10000) for i in range(30)))
10229013.655172413
>>> statistics.stdev((random.randint(1,10000) for i in range(30)))
3106.2902337180203
>>> _ * _ #注意，上面的两个样本数据并不一样，因为都是随机数
9649039.016091954
>>> statistics.variance(range(20))
35.0
>>> statistics.stdev(range(20))
5.916079783099616
>>> _ * _
35.0
>>> statistics.variance([1, 2, 3, 4, 5, 10, 9, 8, 7, 6])
9.166666666666666
>>> statistics.stdev([1, 2, 3, 4, 5, 10, 9, 8, 7, 6])
3.0276503540974917
>>> statistics.variance([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
1.16875
>>> statistics.stdev([1.5, 2.5, 2.5, 2.75, 3.25, 4.75])
1.0810874155219827
>>> _ * _
1.1687500000000002
>>> statistics.variance([3, 3, 3, 3, 3, 3])
0.0
>>> statistics.stdev([3, 3, 3, 3, 3, 3])

0.0

原文地址：http://user.qzone.qq.com/306467355/blog/1446598412

更多精彩内容请访问作者QQ空间。

展开全文
• 本节介绍 Python 中的另一个常用模块 —— statistics模块，该模块提供了用于计算数字数据的数理统计量的函数。它包含了很多函数，具体如下表： mean(data)函数 mean(data) 函数用于计算一组数字的平均值，参数 ...

本节介绍 Python 中的另一个常用模块 —— statistics模块，该模块提供了用于计算数字数据的数理统计量的函数。它包含了很多函数，具体如下表：

mean(data)函数

mean(data) 函数用于计算一组数字的平均值，参数 data 可以是多种形式的，比如 int 型数组或 decimal 型数组等。举例说明函数的具体用法：

>>> statistics.mean([1, 2, 3, 4, 5])
3
>>> from fractions import Fraction as F
>>> statistics.mean([F(4, 7), F(4, 21), F(5, 4), F(1, 4)])
Fraction(95, 168)
>>> from decimal import Decimal as D
>>> statistics.mean([D("0.5"), D("0.78"), D("0.88"), D("0.988")])
Decimal('0.787')

harmonic_mean(data)函数

调和平均数又称倒数平均数，是平均数的一种。 harmonic_mean(data) 函数用于求调和平均数，是总体各统计变量倒数的算术平均数的倒数。例如：

>>> statistics.harmonic_mean([4, 5, 7])
5.0602409638554215

median(data)函数

median(data) 函数用于计算一组数据的中值。如果数据的个数是单数，则中值是中间的数；如果数据的个数是复数，则中值是中间两个数的平均数。例如：

>>> statistics.median([1, 4, 7])
4
>>> statistics.median([1, 4, 7, 10])
5.5
median_low(data)函数
median_low(data) 函数用于计算一组数据的中小值。如果数据的个数是单数，则中小值是中间的数；如果数据的个数是复数，则中小值是中间两个数中最小的数。例如：
>>> statistics.median_low([1, 4, 7])
4
>>> statistics.median_low([1, 4, 7, 10])
4

median_high(data)函数

median_high(data) 函数用于计算一组数据的中大值。如果数据的个数是单数，则中大值是中间的数；如果数据的个数是复数，则中大值是中间两个数中最大的数。例如：

>>> statistics.median_high([1, 4, 7])
4
>>> statistics.median_high([1, 4, 7, 10])
7
median_grouped(data, interval=1)函数
median_grouped(data, interval=1) 函数用于计算分组连续数据的中位数。其中 interval 表示数据之间的间隔，即组距。此函数计算方法较复杂，可参考公式 中位数=中位数所在组下限+{[(样本总数/2-到中位数所在组下限的累加次数)/中位数所在组的次数]*中位数的组距} ,如果数据是空的会报 StatisticsError 错误。例如：
>>> statistics.median_grouped([1, 2, 2, 3, 4, 4, 4, 4, 4, 5])
3.7
>>> statistics.median_grouped([3, 4, 4, 5, 6], interval=1)
4.25
>>> statistics.median_grouped([1, 3, 5, 5, 7], interval=2)
4.5

示例说明：

[1, 2, 2, 3, 4, 4, 4, 4, 4, 5]中位数在4这个分组里面

默认组距为1

所在分组的下限为3.5

样本总数为10

4分组里有5个数

小于3.5的有4个数

所以中位数为：3.5+(10/2-4)/5*1=3.5+1/5=3.7

mode(data)函数

mode(data) 函数用于计算一组数据的众数，即在数据中出现次数最多的数。例如：

>>> statistics.mode([1, 1, 2, 3, 3, 3, 3, 4])
3
>>> statistics.mode(["red", "blue", "blue", "blue", "green", "green", "red"])
'blue'

推荐我们的python学习基地[点击进入](https://jq.qq.com/?_wv=1027&k=5ipV5It)，看老程序是如何学习的！从基础的python脚本、爬虫、django、数据挖掘等编程技术，工作经验，还有前辈精心为学习python的小伙伴整理零基础到项目实战的资料，！每天都有程序员定时讲解Python技术，分享一些学习的方法和需要留意的小细节

展开全文
• ## Update Statistics用法

万次阅读 2008-07-29 13:40:00
一、Update Statistics的作用　为了提高数据库的效率，INFORMIX提供了一个基于成本的查询优化器，执行update statistics语句的作用就是将您创建的数据库表的有关统计信息更新到系统sysmaster的相关表中(如systables...
一、Update Statistics的作用
为了提高数据库的效率，INFORMIX提供了一个基于成本的查询优化器，执行update statistics语句的作用就是将您创建的数据库表的有关统计信息更新到系统sysmaster的相关表中(如systables、syscolumns、sysindexes、sysdistrib、sysprocplan等)，以便查询优化器选择最佳的执行路径。当sysmaster库中没有相应的统计信息，或者统计信息不十分准确时，优化器便无法制定一个行之有效的查询策略，其结果必然是进行大量极其可怕的顺序扫描，产生严重的性能问题。

因此，当您重新装载数据或者对数据库表进行了大量的更新操作后，应该及时执行update statistics。也许您会发现，数据库一些参数配置的不合理可能使数据库效率降低百分之几，但如果您没有定期执行update statistics的话。数据库的性能则可能降低几到十几倍。

二、Update Statistics的语法
执行update statistics共有三个级别，即：update statisticslow、updates tatistics medium、update statistics high。
1 update statistics[low]for table[{table－name|synonym－name}[(column－list)]]][drop distributions]
update statistics low只更新表、字段、记录数、页数及索引等的最基本信息，对字段的分布情况不做统计。其语法说明如下：

(1)update statistics或update statisticslow，对当前数据库中所有表(包括系统表)及过程进行更新统计。
(2)update statistics low for table，对当前数据库中所有表(包括临时表，但不包括系统表)进行更新统计。
(3)update statistics low for table tablename，对指定的表所有字段进行更新统计。
(4)update statistics low for table tablename(column－list)，对指定表的指定字段进行更新统计。
(5)如果不带drop distributions，原有字段分布情况依然保留；否则，原有字段分布情况将被删除。
2 update statistics medium[for table[{table－name|synonym－name}[（column－list）]]][resolution percent[conf]][distributions only]
update statistics medium除了更新表、字段、记录数、页数及索引等的最基本信息外，对字段的分布情况会采取抽样的办法来统计，因此与update statistics low相比需要花费更多的时间。其语法说明如下：

(1)resolution percent是指分布统计的详细程序，percent定义的是一个百分数，如resolution2意思是指按照字段的值分布统计成50段，如果不指定resolution percent，缺省值为2.5。
(2)conf是指分布统计时取样的比例，conf参数的取值范围为0.80—0.99，缺省值为0.95。
(3)如果指定了distributions only，则对索引的信息不做更新统计。
3 update statistics high[for table[{table－name|synonym－name}[(column－list]]][resolutionpercent][distributions only]
update statistics high与update statistics medium的区别是在统计字段的分布情况时，后者采用了取样的办法，而前者进行全部统计，因此update statistics high更新统计最全面，执行时间也最长。其语法说明如下：

(1)如果不指定resolution percent，缺省值为0.5。
(2)如果指定了distributions only，则对索引的信息不做更新统计。
4 update statistics for procedure[procedure－name]，只对指定的过程进行更新统计，对表不做更新统计

三、如何执行Update Statistics
通常执行update statistics的方法是：

1 对表中不带索引的字段执行update statistics medium，每个表执行一次。一般情况下，缺省参数就足够了。对于特别大的表(执行update statistics时，通常把超过26570条记录的表定义为特别大的表)，可以带参数resolution1.00.99。
2 对表中带有索引的字段执行update statistics high，每个字段执行一次。
3 对表中带有复合索引的字段执行update statistics low，每个表执行一次。
4 对每一个小表执行update statistic shigh。

四、注意事项
1 数据库本身不会自动更新sysmaster库中有关statistics统计信息，只有执行update statistics语句后，才能得到更新。
2 执行update statistics语句时，必须具有DBA权限或者为表的属主。
3 由于update statistics通常为单线程运行，不能利用PDQ等并发功能，对于一个较大的数据库，执行update statistics语句一般需要几个小时。为提高效率，可以将update statistics分为多个shell程序同时执行，并充分考虑数据空间分布情况，在并发执行时减少磁盘读写的冲突。
4 执行update statistics语句会占用一些临时空间，当临时空间不够时，数据库将提示错误。您可以通过设置DBUPSPACE环境变量，使update statistics在遇到临时空间不够时分步来执行排序统计。
展开全文
• ## OCP-1Z0-052-V8.02-40题

万次阅读 2013-11-06 00:26:51
40. You have statistics collected for some selected tables. Your requirement is that the statistics for the tables and all dependent indexes must not be overwritten by further statistics collection u
• 在mysql8.0之前的mysqldump命令格式为： mysqldump --host=&lt;server&gt; --port=&lt;port&gt; --user &lt;user&gt; --password database &...Unknown table 'COLUMN_STATISTICS' in i...
• 用impdp 导入，检查 table_statistics 时等待了N长时间。 网上说这是oracle 10G impdp 的一个bug，命令中若定义了 remap_schema 项，也就是原用户名和导入的用户名不一致，则会有这个问题。 网上提供的解决办法是...
• mysqldump: Couldn't execute 'SELECT COLUMN_NAME,JSON_EXTRACT(HISTOGRAM, '\$."...') FROM information_schema.COLUMN_STATISTICS WHERE SCHEMA_NAME = 'wuxiancheng' AND TABLE_NAME = ...
• statistics是统计分析 两者的区别 表面的直接区别是在处理数据的量上有区别，statistics的处理数据量有限，而modeler处理数据的量可以是海量，也就是现在吵得沸沸腾腾的大数据 本质的一些区别是功能上的，modeler...
• 1、下载 ibm spss statistics 26； 2、首先我们要安装原程序，用虚拟机加载SSCLIENT_26.0_M_W_M__ISO_VERSION.iso镜像文件，也可以用winrar解压，如果是win10系统，可以右击以windows资源管理器打开，双击setup运行...
• 然后重新分析一下 analyze table tablename compute statistics 查看表信息 select NUM_ROWS,BLOCKS,AVG_SPACE,AVG_ROW_LEN from user_tables where table_name=table_name; 2.Oracle 表删除大量数据后，
• MOS上有关TIMED_STATISTICS参数说明： Init.ora Parameter "TIMED_STATISTICS" Reference Note [ID 30824.1] Health CheckAlert: Consider setting TIMED_STATISTICS and STATISTICS_LEVEL to recommendedlevels [ID...
• 统计模块statistics python3.7 https://docs.python.org/3/library/statistics.html 统计模块statistics 方法介绍 statistics.mean(data) statistics.harmonic_mean(data) statistics.median(data) ...
• analyze table 一般可以指定分析： 表，所有字段，所有索引字段，所有索引。 若不指定则全部都分析。...SQL> analyze table my_table compute statistics for table for all indexes for all columns;
• May Cordova anonymously report usage statistics to improve the tool over time? 是否允许cordova匿名报告 NoYou have been opted out of telemetry. To change this, run: cordova telemetry on.
• ## OCP-1Z0-052-V8.02-41题

万次阅读 2013-11-06 00:27:31
41. You have recently collected statistics on certain objects of a schema in your database. But you observe suboptimal execution plans for the queries on these objects after two days of statistics co
• statistics_level参数的介绍 statistics_level控制数据库收集统计信息的级别，有三个参数值: BASIC :收集基本的统计信息 TYPICAL：收集大部分统计信息(数据库的默认设置) ALL：收集全部统计信息 [oracle@...
• UPDATE STATISTICS 该命令在一张表或者索引了的视图上更新查询优化统计数字信息. 默认情况下, 查询优化器已经更新了必要的用来提高查询计划的统计信息; 在某些情况下, 你可以通过使用UPDATE STATISTICS 命令或者...
...