小编Mar*_*ius的帖子

在python pandas中,如何重新采样和插入DataFrame?

我有一个pd DataFrame,通常采用以下格式:

   1       2          3          4  
0.1100 0.0000E+00 1.0000E+00 5.0000E+00  
0.1323 7.7444E-05 8.7935E-01 1.0452E+00  
0.1545 4.3548E-04 7.7209E-01 4.5432E-01  
0.1768 1.2130E-03 6.7193E-01 2.6896E-01  
0.1990 2.5349E-03 5.7904E-01 1.8439E-01  
0.2213 4.5260E-03 4.9407E-01 1.3771E-01 
Run Code Online (Sandbox Code Playgroud)

我想要做的是从列表中重新采样列1(索引)值,例如:

indexList = numpy.linspace(0.11, 0.25, 8)
Run Code Online (Sandbox Code Playgroud)

然后我需要从输入DataFrame线性插值第2,3和4列的值(我总是只重新采样/重新索引我的第1列) - 如果需要外推,作为我的最小值/最大值list不一定在我现有的第1列(索引)中.然而,关键点是插值部分.我是python的新手,但我正在考虑使用这样的方法:

  1. output_df = DataFrame.reindex(index = indexList) - 这将主要给出第2-4列的NaN.
  2. 对于index,output_df.iterrows()中的行
    "从DataFrame计算插值/外推值并将它们插入正确的行/列的函数"

不知何故感觉我应该能够使用.interpolate功能,但我无法弄清楚如何.我不能直接使用它 - 它太不准确了,因为在第2-4列中提到的重新索引后的大部分条目都是NaN的; 插值应该在我的初始DataFrame的两个最接近的值内完成.任何好的提示有人吗?(如果我的格式/意图不清楚,请告诉我......)

python interpolation pandas reindex

6
推荐指数
1
解决办法
2840
查看次数

标签 统计

interpolation ×1

pandas ×1

python ×1

reindex ×1