标准差分析是发现异常值的有用方法。有没有办法合并这个查询的结果(找到远离平均值的第四个标准差的值)......
SELECT (AVG(weight_pounds) + STDDEV(weight_pounds) * 4) as high FROM [publicdata:samples.natality];
Run Code Online (Sandbox Code Playgroud)
结果 = 12.721342001626912
...进入另一个查询,该查询生成有关哪些州和日期的婴儿出生体重超过平均值 4 个标准差的信息的查询?
SELECT state, year, month ,COUNT(*) AS outlier_count
FROM [publicdata:samples.natality]
WHERE
(weight_pounds > 12.721342001626912)
AND
(state != '' AND state IS NOT NULL)
GROUP BY state, year, month
ORDER BY outlier_count DESC;
Run Code Online (Sandbox Code Playgroud)
结果:
Row state year month outlier_count
1 MD 1990 12 22
2 NY 1989 10 17
3 CA 1991 9 14
Run Code Online (Sandbox Code Playgroud)
从本质上讲,将其合并为一个查询会很棒。
我写了一个程序,它在一个单独的txt文件中查找数据,然后给出平均值和标准偏差.它找到了我的平均值,但我得到标准偏差的错误.想知道有谁可以帮我修复我的代码.就是这个:
data = File.open("avg_temp.txt", "r+")
contents = data.read
contents = contents.split("\r\n")
#split up array
contents.collect! do |x|
x.split(',')
end
sum = 0
contents.each do |x|
#make loop to find average
sum = sum + x[1].to_f
end
avg = sum / contents.length
puts "The average temperature of Laguardia Airport from 11/97 - 05/11 is:
#{ avg.round(3)}C (Answer is rounded to nearest thousandth place)"
#puts average
variance = 0
contents.each do |x|
variance = variance + (x-avg)**2
end
variance = variance / …Run Code Online (Sandbox Code Playgroud) 我有一个大小为100的预分配数组:
a = zeros(1, 100);
% Do some thing....
% Calculate standard deviation here.
Run Code Online (Sandbox Code Playgroud)
现在我想计算从元素1到元素20的标准偏差.我该怎么做?
使用函数std,它只计算整个数组.
我有一个并行应用程序,其中我根据计算的平均值在每个节点中计算数据点每个分区的方差,但如何计算全局方差(所有方差的总和)?
我认为这将是方差的简单总和除以节点数,但它并没有给我一个接近的结果......
如何使用ruby将z分数转换为概率?
例:
z_score = 0
probability should be 0.5
z_score = 1.76
probability should be 0.039204
Run Code Online (Sandbox Code Playgroud) 我有一个 160 x 250,000 的数据框。我想在 R 中找到除第一列(249,999 列)之外的所有列的 SD。是否可以执行此操作并添加一行 SD 值?这些是 DNA 甲基化的探针 β 值。
A.append([(float(a) + float(b) + float(c))/3,
(float(d) + float(e) + float(f))/3,
(float(g) + float(h) + float(i))/3,
(float(j) + float(k) + float(l))/3,
(float(m) + float(n) + float(o))/3,
(float(p) + float(q) + float(r))/3,
(float(s) + float(t) + float(u))/3])
def mean(A):
positives = [b for b in A if b >= 0]
E.append((len(positives)) / (len(A))*100)
if positives:
return sum(positives) / len(positives)
else:
return 0
C = map(mean, zip(*A))
print C
#3 sigma check
def sigma(A):
positives = [b for b in A if b …Run Code Online (Sandbox Code Playgroud) 我有一个时间序列数据框,看起来像
2014-02-05 2014-02-06 2014-02-07 2014-02-12 2014-02-14 2014-02-17 2014-02-18 2014-02-19 ......
0.0379 -0.0008 0.0352 0.0379 0.0392 0.0173 0.0360 0.0371
Run Code Online (Sandbox Code Playgroud)
我要计算每5天的数据从这个名单中R.移动标准差我的意思是说,我希望选择在形式的样品,以便SAMPLE1 [1] = 2014-02-05,0.0379,SAMPLE1 [ 2] = 2014年2月12日,0.0379 .....然后找到该样品的标准偏差,然后使用滚动标准偏差就移动到下一个日期即SAMPLE2 [1] = 2014年2月6日, -0.0008,sample2 [2] = 2014-02-12,0.0379并找到该列表的标准差,依此类推.由于可用日期不规则,我不能使用seq(1:l,by =).在rollapply中,函数将采用每个连续的数字来计算标准偏差.有没有办法以有效的方式从该列表中每隔5天采样一次数据,或以某种方式修改标准差函数,使其每隔5天选择一次数据,然后计算可用数据的标准差.任何有关这方面的建议都将受到高度赞赏.
我有一个看起来像这样的数据表:
Category : Solution 1 : Solution 2 : Diff
1: 5 : 6 : -1
2: 7 : 6 : 1
3: 4 : 4 : 0
4: 8 : 9 : -1
Run Code Online (Sandbox Code Playgroud)
如何计算R内的标准偏差?
这是我的代码,它应该计算填充数组填充的随机生成数组的标准偏差。stdDev 应该计算标准偏差。otherStats 应该找到数组中的最大值和最小值。到目前为止,唯一生成的是偏差、最小和最大的 0。这是代码:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
float fillArray (float array[7][5]);
float printArray (float array[7][5], float deviation, float largest, float smallest);
float stdDev (float array[7][5], float deviation, float average);
float otherStats (float array[7][5], float largest, float smallest);
int main ()
{
float deviation, average, largest, smallest;
float array[7][5];
fillArray (array);
stdDev (array, deviation, average);
otherStats (array, largest, smallest);
printArray (array, deviation, largest, smallest);
}
float fillArray (float array[7][5])
{
int row, column;
for (row = 0; row …Run Code Online (Sandbox Code Playgroud) 对于家庭作业,我必须创建一个可以在任何容器上执行的模板化标准偏差功能.这就是我所拥有的:
template <typename Container>
double findMean(Container c, int count){
double sum = 0;
for (auto&& e : c){
sum += e;
}
sum /= count;
return sum;
}
template <typename Container>
double findStDev(Container c){
double mean = findMean(c, c.size());
std::cout << mean << std::endl;
for (auto&& e : c){
e -= mean;
e *= e;
}
mean = sqrt(findMean(c, c.size()));
return mean;
}
Run Code Online (Sandbox Code Playgroud)
我第一次找到平均值时想要除以容器的整个大小(n),但是当我第二次找到标准偏差时,我需要除以size-1(n-1).
.size()函数是否可用于所有c ++容器?
首先,我想找到这个图像的标准偏差:
其次,我想找到图像中所有线条的标准偏差.
但在第一步,有些事情出错,我看到了这一点:
>> A = imread('C:\Users\PC\Desktop\deneme.jpg');
>> std (A);
Error using var (line 65)
First argument must be single or double.
Error in std (line 38)
y = sqrt(var(varargin{:}));
line 65: error(message('MATLAB:var:integerClass'));
line 38: y = sqrt(var(varargin{:}));
Run Code Online (Sandbox Code Playgroud)
如何解决此问题以及查找此图像中所有行的标准偏差的代码是什么?
math ×3
r ×3
matlab ×2
ruby ×2
variance ×2
c ×1
c++ ×1
containers ×1
mean ×1
probability ×1
python ×1
row ×1
size ×1
statistics ×1