Как использовать rbind в python (эквивалент r)
Функция rbind в R, сокращенная от row-bind , может использоваться для объединения кадров данных по их строкам.
Мы можем использовать функцию pandas concat() для выполнения эквивалентной функции в Python:
df3 = pd. concat ([df1, df2])
Следующие примеры показывают, как использовать эту функцию на практике.
Пример 1. Использование rbind в Python с одинаковыми столбцами
Предположим, у нас есть следующие два кадра данных panda:
import pandas as pd #define DataFrames df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E'], ' points ': [99, 91, 104, 88, 108]}) print (df1) team points 0 to 99 1 B 91 2 C 104 3 D 88 4 E 108 df2 = pd. DataFrame ({' assists ': ['F', 'G', 'H', 'I', 'J'], ' rebounds ': [91, 88, 85, 87, 95]}) print (df2) team points 0 F 91 1 G 88 2:85 3 I 87 4 days 95
Мы можем использовать функцию concat() , чтобы быстро связать эти два DataFrame вместе по их строкам:
#row-bind two DataFrames
df3 = pd. concat ([df1, df2])
#view resulting DataFrame
df3
team points
0 to 99
1 B 91
2 C 104
3 D 88
4 E 108
0 F 91
1 G 88
2:85
3 I 87
4 days 95
Обратите внимание, что мы также можем использовать reset_index() для сброса значений индекса нового DataFrame:
#row-bind two DataFrames and reset index values
df3 = pd. concat ([df1, df2]). reset_index (drop= True )
#view resulting DataFrame
df3
team points
0 to 99
1 B 91
2 C 104
3 D 88
4 E 108
5 F 91
6 G 88
7:85 a.m.
8 I 87
9 D 95
Пример 2. Использование rbind в Python с неравными столбцами
Мы также можем использовать функцию concat() , чтобы связать вместе два DataFrame, которые имеют неодинаковое количество столбцов, и любые пропущенные значения будут просто заполнены NaN:
import pandas as pd #define DataFrames df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E'], ' points ': [99, 91, 104, 88, 108]}) df2 = pd. DataFrame ({' team ': ['F', 'G', 'H', 'I', 'J'], ' points ': [91, 88, 85, 87, 95], ' rebounds ': [24, 27, 27, 30, 35]}) #row-bind two DataFrames df3 = pd. concat ([df1, df2]). reset_index (drop= True ) #view resulting DataFrame df3 team points rebounds 0 to 99 NaN 1 B 91 NaN 2 C 104 NaN 3 D 88 NaN 4 E 108 NaN 5 F 91 24.0 6G 88 27.0 7:85 AM 27.0 8 I 87 30.0 9 D 95 35.0
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные функции в Python:
Как использовать cbind в Python (эквивалент R)
Как выполнить ВПР в Pandas
Как удалить строки, содержащие определенное значение в Pandas