У метода Pandas pd.Series.get есть параметр по умолчанию (очень похожий на dict.get), который предполагает, что я должен иметь возможность использовать его для поиска элемента в его индексе и возвращает значение строки, но возвращает значение по умолчанию при запросене в индексе.
Действительно, это работает (и эквивалентно .loc, где default = NAN):
# x10
maptable = pd.Series( [100, 110, 120, 130],
index=[10, 11, 12, 13]).sort_index()
query_vals = pd.Series([11,12,15], index=['A', 'B', 'C'])
# Passing list-likes to .loc or [] with any missing label will raise KeyError in the future, you can use .reindex() as an alternative.
print maptable.get(query_vals, float("nan"))
11 110.0
12 120.0
15 NaN
# Passing list-likes to .loc or [] with any missing label will raise KeyError in the future, you can use .reindex() as an alternative.
print maptable.loc[query_vals]
... но жалуется, что «Передача списка - нравится .locили [] с любой отсутствующей меткой вызовет KeyError в будущем, вы можете использовать .reindex () в качестве альтернативы. "
Не является ли цель .get (over .loc) именно для того, чтобы разрешить поиск снедостающие индексы.
Что я должен сделать здесь, чтобы избежать этого предупреждения?Я не уверен, как .reindex помогает.