Как я могу вернуть больший размер данных из двух? - PullRequest
1 голос
/ 28 марта 2020

Например, у меня есть два кадра данных:

a = pd.DataFrame({'A':[1,2,3],'B':[6,5,4]})
b = pd.DataFrame({'A':[3,2,1],'B':[4,5,6]})

Я хочу получить кадр данных c, состоящий из большего значения в каждой позиции a & b:

c = max_function(a,b) = pd.DataFrame(max(a.iloc[i,j], b.iloc[i,j]))
c = pd.DataFrame({'A':[3,2,3],'B':[6,5,6]})

Я не хочу генерировать c, сравнивая каждое значение в a & b, потому что реальные кадры данных в моей работе очень велики. Поэтому мне интересно, есть ли готовая pandas функция, которая может это сделать? Спасибо!

1 Ответ

3 голосов
/ 28 марта 2020

Вы можете использовать numpy .maximum :

import pandas as pd
import numpy as np

a = pd.DataFrame({'A': [1, 2, 3], 'B': [6, 5, 4]})
b = pd.DataFrame({'A': [3, 2, 1], 'B': [4, 5, 6]})
c = np.maximum(a, b)
print(c)

Выход

   A  B
0  3  6
1  2  5
2  3  6
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...