Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- >>> x = np.arange(0,10)
- >>> y1 = np.exp(-x/3.0)
- >>> y2 = np.sqrt(x)
- >>> df = pd.DataFrame(np.concatenate((y1[:,np.newaxis], y2[:,np.newaxis]),axis=1), index=x)
- >>> f = [scipy.interpolate.interp1d(df.index, df.iloc[:, i], kind='linear') for i in range(2)]
- class Test:
- def __init__(self, df):
- self.df = df
- self._intep = [scipy.interpolate.interp1d(df.index,df.iloc[:, i], kind='linear') for i in range(len(df.columns))]
- def __getitem__(self, pos):
- x, y = pos
- col = self.df.columns[y]
- l = [self._intep[i](x) for i in range(len(col))]
- return np.column_stack(l)
- t = Test(df)
- t[[1, 2, 4], :]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement