【问题标题】:Re-binning python array重新装箱 python 数组
【发布时间】:2020-06-30 05:48:30
【问题描述】:

假设我有数组

x=[0,0.5,1.7,4,5.5,5.7,8,10]
y=[10,23,2,3,55,67,74,20]

绘制时,它将在 x 轴上显示 0 到 10 的值,但是,数据不会在 x 上合并为整数值。有没有办法我们可以将值合并到 x=[0,1,2,3....10]。 我知道插值可以帮助我们对值进行分类,还有其他方法吗?

【问题讨论】:

  • x = list(range(len(y)))
  • 那么对应的y值呢?
  • 你没有展示你是如何绘制数据的。

标签: python arrays binning


【解决方案1】:

Numpy 可以提供帮助。

import numpy as np
x=[0,0.5,1.7,4,5.5,5.7,8,10]
y=[10,23,2,3,55,67,74,20]

z = np.interp([0,1,2,3,4,5,6,7,8,9,10], x, y)

z = 数组([10,14.25,2.13043478,2.56521739,3,37.66666667,14.86956522,44.43478261,74,47,20])

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    此示例使用 matplotlib 进行插值:

    import matplotlib.pyplot as plt
    import numpy as np
    
    if __name__ == "__main__":
        x=[0,0.5,1.7,4,5.5,5.7,8,10]
        y=[10,23,2,3,55,67,74,20]
    
        z = np.interp([1,2,3,4,5,6,7,8,9,10,11], x, y)
    
        plt.plot(x,y)
        plt.plot(z)
        plt.show()
    

    结果将显示在这张图片中。蓝线是坐标 x 和 y。黄色是插值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-28
      • 2020-01-31
      • 1970-01-01
      • 2014-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多