Рассчитать количество ячеек с одинаковыми значениями в 2 столбцах - PullRequest
0 голосов
/ 29 сентября 2019

рассмотрите этот фрейм данных,

print (df)
   A  B  C  D  E
0  T  F  T  T  T
1  T  F  F  F  T
2  F  F  F  T  T
3  F  T  T  F  F

Как я могу найти число ячеек, имеющих A = F & E = T (в данном случае 1), используя панд?

1 Ответ

1 голос
/ 29 сентября 2019

Сравните оба столбца и посчитайте значения True s на sum, потому что True s обрабатываются как 1:

out = ((df.A=='F') & (df.E=='T')).sum()
print (out)
1

Другое решение, если нет неправильных значений в A илиE столбец:

out = (df.A + df.E =='FT').sum()
print (out)
1

РЕДАКТИРОВАТЬ:

Кажется, есть строки repr логического или логического:

print (df)
       A      B      C      D      E
0   True  False   True   True   True
1   True  False  False  False   True
2  False  False  False   True   True
3  False   True   True  False  False

print (df.dtypes)
A    object
B    object
C    object
D    object
E    object
dtype: object

out = ((df.A=='False') & (df.E=='True')).sum()
print (out)
1

#possible convert strings repr to boolean
#df = df == 'True'
print (df)
       A      B      C      D      E
0   True  False   True   True   True
1   True  False  False  False   True
2  False  False  False   True   True
3  False   True   True  False  False

print (df.dtypes)
A    bool
B    bool
C    bool
D    bool
E    bool
dtype: object

out = (~df.A & df.E).sum()
print (out)
1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...