一列数据是频率的统计问题?
有一个样本,a列是数字,b列是该数字出现的次数,样本很大,要求这个样本的标准差和正态分布图,请问用python应该怎样处理?查了很多,还是不太懂...
A B
100 2
200 3
300 4
... ...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
有一个样本,a列是数字,b列是该数字出现的次数,样本很大,要求这个样本的标准差和正态分布图,请问用python应该怎样处理?查了很多,还是不太懂...
A B
100 2
200 3
300 4
... ...
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
关于数据
可以看成一个长这样
[100,100,200,200,200,300,300,300,300,...]
的list
。标准分布
可以使用
numpy
的std()
来计算标准差,当然自己写公式也可以。比如分布图
正态分布图只是正态分布的数据的分布图。是否正态分布取决于你的数据。可以考虑用seaborn来绘制分布图。
分布图长这样:
大数据量
可以用
pandas
读取。用一个循环将数据表转为list:虽然 @Leo黎诗霆 同学的方法可以解决问题,但算不上高效率,也没有充分利用 numpy 类库的矩阵运算能力。
以下提供更为简洁、高效的方法,希望同学们从中理解 numpy 矩阵运算的精妙。
假设你已经知道如何计算一组数的标准差,否则请看 https://zh.wikipedia.org/zh-h...
对于一组数 [ 100, 200, 300 ] ,及其对应的个数 [ 1, 2, 3 ]