我正在尝试转换数据框中的一列以获取新列,新列中的每一行都是从旧列和查找表插入的。例子:
原始数据框:
Date StartingValue
2010-01-01 10
2010-01-02 25
2010-01-03 15
2010-01-04 20
查找表数据框:
StartingValue NewValue
10 500
20 1200
30 2750
想要的结果:
Date StartingValue NewValue
2010-01-01 10 500
2010-01-02 25 1975
2010-01-03 15 850
2010-01-04 20 1200
索引将保持不变,并且在查找表中最近的行之间的插值应该是线性的。
我可能看过
map()
或 apply()
但不知道如何在这里使用它们,尤其是插值。感谢所有帮助。 最佳答案
numpy.interp 有这个功能:
import numpy as np
df['NewValue'] = np.interp(df['StartingValue'].values,
lookup_table['StartingValue'].values,
lookup_table['NewValue'].values)
关于python - 来自现有列和查找表的新插值列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48448627/