Python подсчитывает одинаковые значения для определенных столбцов - PullRequest
2 голосов
/ 21 октября 2019

Если у меня есть датафрейм;

      A       B       C      D
1     1       2       2      1
2     1       1       2      1
3     3       1       0      1
4     2       4       4      4 

Я хочу добавить столбцы B и C и подсчитывать, совпадают ли значения со столбцами D. Желаемый результат:

          A       B       C     B+C      D
    1     1       2       2      4       1
    2     1       1       2      3       1
    3     3       1       0      1       1
    4     2       4       4      8       4 

There are 3 different values compare the "B+C" and "D".

Не могли бы вы помочь мне об этом?

Ответы [ 2 ]

2 голосов
/ 21 октября 2019

Вы можете сделать что-то вроде:

df.B.add(df.C).ne(df.D).sum()
# 3

Если вам нужно добавить столбец:

df['B+C'] = df.B.add(df.C)
diff = df['B+C'].ne(df.D).sum()
print(f'There are {diff} different values compare the "B+C" and "D"')
#There are 3 different values compare the "B+C" and "D"
1 голос
/ 21 октября 2019
df.insert(3,'B+C', df['B']+df['C'])
3 is the index
df.head()

    A   B   C   B+C D
0   1   2   2   4   1
1   1   1   2   3   1
2   3   1   0   1   1
3   2   4   4   8   4

После этого вы можете выполнить шаги @ yatu

df['B+C'].ne(df['D'])
0     True
1     True
2    False
3     True dtype: bool

df['B+C'].ne(df['D']).sum()
 3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...