簡體   English   中英

Python 2D矩陣插值

[英]Python 2D Matrix Interpolation

我有一個包含一些浮點值和許多NaN值的矩陣。 現在,我想對NaN值進行插值。

矩陣如下所示:

[
  [NaN, NaN, 3.9, NaN, NaN],
  [3.2, NaN, NaN, 2.9, NaN],
  [NaN, NaN, 2.5, NaN, NaN],
  [7.6, NaN, NaN, NaN, 1.3],
  [NaN, 0.6, NaN, NaN, NaN]
]

我知道存在scipy.interpolate.interp2dhttps://docs.scipy.org/doc/scipy-0.14.0/reference/generation/scipy.interpolate.interp2d.html )。 但是我想進行樣條插值。 使用pandashttps://pandas.pydata.org/pandas-docs/stable/genic/pandas.DataFrame.interpolate.html ),我可以制作樣條曲線,但是我不確定它是否適用於二維數據。 也許有人可以幫助我! :-)

謝謝

年,也許您需要這是熊貓解決方案:

a = [
  [None, None, 3.9, None, None],
  [3.2, None, None, 2.9, None],
  [None, None, 2.5, None, None],
  [7.6, None, None, None, 1.3],
  [None, 0.6, None, None, None]
]
b = {i:a[i] for i in range(len(a))}
c = pd.DataFrame(b).T
c.interpolate(limit_direction ='both',inplace=True,axis=0)

如果需要逐行插補,則切換axis=1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM