Примечание: мой вопрос не this one, но что-то немного более тонкое.Python Pandas: выберите данные и игнорируйте KeyErrors
Скажем, у меня есть dataframe, который выглядит, как это
df =
A B C
0 3 3 1
1 2 1 9
df[["A", "B", "D"]]
поднимет KeyError
.
Есть ли способ python pandas позволить df[["A", "B", "D"]] == df[["A", "B"]]
? (То есть: просто выберите столбцы, которые существуют.)
Одним из решений может быть
good_columns = list(set(df.columns).intersection(["A", "B", "D"]))
mydf = df[good_columns]
Но есть две проблемы:
- Это неуклюжим и безвкусный.
- Заказ
mydf.columns
может быть["A", "B"]
или["B", "A"]
.
Спасибо. Я хочу, чтобы в документации по pandas были примеры использования для каждой функции, так же как scikit-learn. – hlin117
Почему бы вам не подумать о том, чтобы представить себя самостоятельно, документация - отличный способ начать работу с проектами с открытым исходным кодом. – maxymoo