编写我自己的Interpolate函数Python

时间:2017-08-24 18:49:15

标签: python pandas numpy interpolation python-3.6

我正在使用此脚本从excel获取插值。它工作正常,效果很好

import pandas as pd
from pandas import ExcelWriter
from pandas import ExcelFile
import numpy as np

def estimateMonthlySales(domainId,categoryId,salesRank):

    df = pd.read_excel('data.xlsx', sheetname='units')
    df = df.set_index('index')

    indexRef = str(domainId)+'_'+str(categoryId)
    startCol = 7

    array_x1 = df.loc[indexRef,:].index
    array_y1 = df.loc[indexRef,:].values

    array_x = []
    for i in range(startCol,len(array_x1)):
        array_x.append(int(array_x1[i]))

    array_y = []
    for i in range(startCol,len(array_y1)):
        try:
            j = int(array_y1[i])
        except:
            pass
        array_y.append(j)

    #print(array_x)
    #print(array_y)

    return(int(np.interp(salesRank, array_x, array_y)*0.98))


print(estimateMonthlySales(2,468292,600))

我正在使用numpy interp功能。但我想编写自己的插值函数来获得由numpy interpolation functoin提供的数据集的类似结果。如何在不使用numpy和pandas的情况下编写自己的插值函数。

我正在使用Python 3.6。

0 个答案:

没有答案