Как работает df.interpolate(inplace=True)?
У меня проблемы с пониманием, как это работает. При inplace=True функция ничего не выводит, а исходный df остается неизменным. Как это работает?
Извините, я написал "фильтр" в своем первом посте. Это была очень глупая ошибка.
По запросу @Alex пример выглядит следующим образом:
df = pd.DataFrame(np.random.randn(4,3), columns=map(chr, range(65,68)))
df['B'] = np.nan
print df
print df.interpolate(axis=1)
print df
print df.interpolate(axis=1, inplace=True)
print df
Вывод следующий:
A B C
0 -0.956273 NaN 0.919723
1 1.127298 NaN -0.585326
2 -0.045163 NaN -0.946355
3 -1.375863 NaN -1.279663
A B C
0 -0.956273 -0.018275 0.919723
1 1.127298 0.270986 -0.585326
2 -0.045163 -0.495759 -0.946355
3 -1.375863 -1.327763 -1.279663
A B C
0 -0.956273 NaN 0.919723
1 1.127298 NaN -0.585326
2 -0.045163 NaN -0.946355
3 -1.375863 NaN -1.279663
None
A B C
0 -0.956273 NaN 0.919723
1 1.127298 NaN -0.585326
2 -0.045163 NaN -0.946355
3 -1.375863 NaN -1.279663
Как видите, при первой интерполяции была создана копия исходного кадра данных. Я хотел интерполировать и обновлять исходный фрейм данных, поэтому я попытался inplace
поскольку в документации указано следующее:
inplace: bool, по умолчанию False Обновите NDFrame на месте, если это возможно.
Вторая интерполяция не вернула никакого значения и не обновила исходный кадр данных. Так что я в замешательстве.
И, как просил @joris, моя версия для панд '0.15.1'
, Хотя этот запрос из-за моей ошибки...