Як відняти два стовпці в pandas dataframe


Ви можете використовувати такий синтаксис, щоб відняти один стовпець від іншого в pandas DataFrame:

 #subtract column 'B' from column 'A'
df[' AB '] = df. A - df. B

Наступні приклади показують, як використовувати цей синтаксис на практиці.

Приклад 1: відніміть два стовпці в Pandas

Наступний код показує, як відняти один стовпець від іншого в pandas DataFrame і призначити результат новому стовпцю:

 import pandas as pd

#createDataFrame 
df = pd. DataFrame ({' A ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' B ': [5, 7, 8, 9, 12, 9, 12, 4],
                   ' C ': [11, 8, 10, 6, 6, 5, 9, 12]})

#subtract column B from column A
df[' AB '] = df. A - df. B

#view DataFrame
df

        A B C AB
0 25 5 11 20
1 12 7 8 5
2 15 8 10 7
3 14 9 6 5
4 19 12 6 7
5 23 9 5 14
6 25 12 9 13
7 29 4 12 25

Новий стовпець під назвою « AB » відображає результати віднімання значень у стовпці B із значень у стовпці A.

Приклад 2: відніміть два стовпці з пропущеними значеннями

Якщо ми віднімаємо один стовпець від іншого в pandas DataFrame і в одному зі стовпців є відсутні значення, результатом віднімання завжди буде відсутнє значення:

 import pandas as pd
import numpy as np

#create DataFrame with some missing values
df = pd. DataFrame ({' A ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' B ': [5, 7, np. no , 9, 12, np. no , 12, 4],
                   ' C ': [np. no , 8, 10, 6, 6, 5, 9, 12]}) 

#subtract column B from column A
df[' AB '] = df. A - df. B

#view DataFrame
df

	A B C AB
0 25 5.0 NaN 20.0
1 12 7.0 8.0 5.0
2 15 NaN 10.0 NaN
3 14 9.0 6.0 5.0
4 19 12.0 6.0 7.0
5 23 NaN 5.0 NaN
6 25 12.0 9.0 13.0
7 29 4.0 12.0 25.0

Якщо ви хочете, ви можете замінити всі відсутні значення в dataFrame нулями за допомогою функції df.fillna(0) перед тим, як віднімати один стовпець з іншого:

 import pandas as pd
import numpy as np

#create DataFrame with some missing values
df = pd. DataFrame ({' A ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' B ': [5, 7, np. no , 9, 12, np. no , 12, 4],
                   ' C ': [np. no , 8, 10, 6, 6, 5, 9, 12]}) 

#replace all missing values with zeros
df = df. fillna ( 0 )

#subtract column B from column A
df[' AB '] = df. A - df. B

#view DataFrame
df
	A B C AB
0 25 5.0 0.0 20.0
1 12 7.0 8.0 5.0
2 15 0.0 10.0 15.0
3 14 9.0 6.0 5.0
4 19 12.0 6.0 7.0
5 23 0.0 5.0 23.0
6 25 12.0 9.0 13.0
7 29 4.0 12.0 25.0

Додаткові ресурси

Як додати рядки до Pandas DataFrame
Як додати масив Numpy до Pandas DataFrame
Як підрахувати кількість рядків у Pandas DataFrame

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *