python - 通过从文件 : matplotlib 读取值来绘制 CDF

标签 python matplotlib cdf

我需要绘制从文件读取的整数值的 cdf。我正在遵循示例 here 。我不知道如何标准化 pdf 的数据,然后计算 cdf。

import numpy as np
from pylab import *

with open ("D:/input_file.txt", "r+") as f:
    data = f.readlines()
    X = [int(line.strip()) for line in data]
    Y  = exp([-x**2 for x in X])  # is this correct? 

    # Normalize the data to a proper PDF
    Y /= ... # not sure what to write here

    # Compute the CDF
    CY = ... # not sure what to write here

    # Plot both
    plot(X,Y)
    plot(X,CY,'r--')

    show()

最佳答案

我可以提出一个答案,您可以使用 NumPy 确定概率密度函数 (PDF) 和累积分布函数 (CDF)。

import numpy as np
# -----------------
data = [88,93,184,91,107,170,88,107,167,90];
# -----------------
# get PDF:
ydata,xdata = np.histogram(data,bins=np.size(data),normed=True);
# ----------------
# get CDF:
cdf = np.cumsum(ydata*np.diff(xdata));
# -----------------
print 'Sum:',np.sum(ydata*np.diff(xdata))

我正在使用 Numpy 方法直方图,它会给我 PDF,然后我将根据 PDF 计算 CDF。

关于python - 通过从文件 : matplotlib 读取值来绘制 CDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52524625/

相关文章:

matplotlib - 获取文本的边界框并更新 Canvas

python - Tensorflow 中多元正态分布的 CDF

python - 使用Python通过urllib下载图片并测试网站是否存在

python通信MODBUS TCP/IP树莓派和HMI-写入值

python - 如何在单个 y-tick 上绘制散点图

r - 如何绘制具有不同行数的向量的多个 CDF 图

statistics - 重尾分布 - 威 bool

python - 学习python为了安全,遇到su的麻烦

Python:如何对列表中的元素进行分组并获取组的总和

matplotlib:显示一个带有边缘密度图的二维数组