У меня есть указатель, содержащий 3 кадра данных одинаковой формы. Я хотел бы создать:.python pandas - можно сравнить 3 dfs одной и той же формы, используя где (max())? это проблема маскировки?
- 4-й dataframe, который идентифицирует наибольшее значение из исходного 3 в каждой координате - так выпо [ 'четыре'] IX [0, 'A'] = MAX (DIC [» ix [0, 'A'], dic ['two']. ix [0, 'A'], dic ['three']. ix [0, 'A'])
a пятые со вторым по величине значения
dic = {} for i in ['one','two','three']: dic[i] = pd.DataFrame(np.random.randint(0,100,size=(10,3)), columns=list('ABC'))
Я не могу понять, как использовать .гд(), чтобы сравнить оригинал 3 ДХ. Для окончательного набора данных петля будет неэффективной.
отличный ответ, спасибо pi. находите ли вы какие-либо различия в производительности между работой с панелями против dicts dfs? – MJS
@ MJS да! Работа с панелями будет быстрее. Вы можете ускорить это, работая на базовых массивах numpy. Но я оставлю это для вас, чтобы понять. – piRSquared