Hướng dẫn how do you join dataframes in python? - làm thế nào để bạn nối các khung dữ liệu trong python?

DataFrame.join (other, on = none, how = 'left', lsuffix = '', rsuffix = '', sort = false, xác nhận = none) [nguồn]#join(other, on=None, how='left', lsuffix='', rsuffix='', sort=False, validate=None)[source]#

Tham gia các cột của một DataFrame khác.

Tham gia các cột với DataFrame khác trên chỉ mục hoặc trên cột chính. Tham gia hiệu quả nhiều đối tượng DataFrame theo chỉ mục cùng một lúc bằng cách truyền danh sách.

Tham sốotherotherdataframe, sê -ri hoặc danh sách chứa bất kỳ sự kết hợp nào của chúngotherDataFrame, Series, or a list containing any combination of them

Chỉ mục phải tương tự như một trong các cột trong này. Nếu một loạt được thông qua, thuộc tính tên của nó phải được đặt và sẽ được sử dụng làm tên cột trong kết quả được tham gia DataFrame.

onstr, danh sách str hoặc mảng, tùy chọnstr, list of str, or array-like, optional

(Các) tên cấp độ trong cột hoặc chỉ mục trong trình gọi tham gia vào chỉ mục trong khác, nếu không tham gia vào chỉ số chỉ mục. Nếu nhiều giá trị được đưa ra, DataFrame khác phải có đa dạng. Có thể truyền một mảng làm phím tham gia nếu nó chưa có trong DataFrame gọi. Giống như một hoạt động Vlookup Excel.

Làm thế nào {’trái,’ phải, ’bên ngoài,‘ bên trong{‘left’, ‘right’, ‘outer’, ‘inner’}, default ‘left’

Làm thế nào để xử lý hoạt động của hai đối tượng.

  • Trái: Sử dụng chỉ mục gọi khung gọi (hoặc cột nếu được chỉ định)

  • Phải: Sử dụng chỉ số khác.

  • Bên ngoài: Hình thức liên kết của chỉ mục gọi khung gọi (hoặc cột nếu được chỉ định) với chỉ mục khác và sắp xếp nó. từ vựng.

  • Bên trong: Biểu mẫu giao điểm của chỉ mục gọi khung gọi (hoặc cột nếu được chỉ định) với chỉ mục khác, bảo tồn thứ tự của cuộc gọi điện thoại.

  • Cross: Tạo sản phẩm Cartesian từ cả hai khung, bảo quản thứ tự của các phím bên trái.

    Mới trong phiên bản 1.2.0.

lsuffixstr, mặc định ‘str, default ‘’

Hậu tố để sử dụng từ các cột chồng chéo của khung bên trái.

rsuffixstr, mặc định ‘str, default ‘’

Hậu tố để sử dụng từ các cột chồng chéo khung bên phải.

sortbool, mặc định saibool, default False

Kết quả đặt hàng DataFrame từ vựng bằng khóa tham gia. Nếu sai, thứ tự của khóa tham gia phụ thuộc vào loại tham gia (cách từ khóa).

ValidateStr, tùy chọnstr, optional

Nếu được chỉ định, kiểm tra nếu tham gia là loại được chỉ định. * On One_to_one, hoặc 1: 1: Kiểm tra xem các phím tham gia có phải là duy nhất trong cả hai bộ dữ liệu bên trái và phải không. * Một lần nữa, One One_To_Many, hoặc 1: M ': Kiểm tra xem các phím tham gia có phải là duy nhất trong bộ dữ liệu bên trái không. * Voi nhiều_to_one, hoặc M: 1: Kiểm tra xem các phím tham gia có phải là duy nhất trong bộ dữ liệu bên phải không. * Voi Many_to_many, hoặc M: M, cho phép, nhưng không dẫn đến séc. .. Phiên bản đã làm việc :: 1.5.0

ReturnSdatAframe

Một khung dữ liệu chứa các cột từ cả người gọi và người gọi khác.

Ghi chú

Các tham số trên, LSuffix và RSuffix không được hỗ trợ khi truyền danh sách các đối tượng DataFrame.

Hỗ trợ chỉ định mức chỉ mục là tham số ON đã được thêm vào phiên bản 0.23.0.

Ví dụ

>>> df = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3', 'K4', 'K5'],
...                    'A': ['A0', 'A1', 'A2', 'A3', 'A4', 'A5']})

>>> df
  key   A
0  K0  A0
1  K1  A1
2  K2  A2
3  K3  A3
4  K4  A4
5  K5  A5

>>> other = pd.DataFrame({'key': ['K0', 'K1', 'K2'],
...                       'B': ['B0', 'B1', 'B2']})

>>> other
  key   B
0  K0  B0
1  K1  B1
2  K2  B2

Tham gia DataFrames bằng cách sử dụng các chỉ mục của họ.

>>> df.join(other, lsuffix='_caller', rsuffix='_other')
  key_caller   A key_other    B
0         K0  A0        K0   B0
1         K1  A1        K1   B1
2         K2  A2        K2   B2
3         K3  A3       NaN  NaN
4         K4  A4       NaN  NaN
5         K5  A5       NaN  NaN

Nếu chúng ta muốn tham gia bằng cách sử dụng các cột khóa, chúng ta cần đặt khóa để trở thành chỉ mục trong cả DF và khác. DataFrame đã tham gia sẽ có khóa làm chỉ mục của nó.

>>> df.set_index('key').join(other.set_index('key'))
      A    B
key
K0   A0   B0
K1   A1   B1
K2   A2   B2
K3   A3  NaN
K4   A4  NaN
K5   A5  NaN

Một tùy chọn khác để tham gia bằng cách sử dụng các cột khóa là sử dụng tham số ON. DataFrame.join luôn sử dụng chỉ mục khác nhưng chúng ta có thể sử dụng bất kỳ cột nào trong DF. Phương pháp này bảo tồn chỉ mục DataFrame gốc trong kết quả.

>>> df.join(other.set_index('key'), on='key')
  key   A    B
0  K0  A0   B0
1  K1  A1   B1
2  K2  A2   B2
3  K3  A3  NaN
4  K4  A4  NaN
5  K5  A5  NaN

Sử dụng các giá trị khóa không duy nhất cho thấy cách chúng được khớp.

>>> df = pd.DataFrame({'key': ['K0', 'K1', 'K1', 'K3', 'K0', 'K1'],
...                    'A': ['A0', 'A1', 'A2', 'A3', 'A4', 'A5']})

>>> df
  key   A
0  K0  A0
1  K1  A1
2  K1  A2
3  K3  A3
4  K0  A4
5  K1  A5

>>> df.join(other.set_index('key'), on='key', validate='m:1')
  key   A    B
0  K0  A0   B0
1  K1  A1   B1
2  K1  A2   B1
3  K3  A3  NaN
4  K0  A4   B0
5  K1  A5   B1

Làm cách nào để tham gia hai khung dữ liệu trong một cột trong Python?

Chúng ta có thể hợp nhất hai khung dữ liệu gấu trúc trên một số cột nhất định bằng cách sử dụng hàm hợp nhất bằng cách chỉ định các cột nhất định để hợp nhất.Ví dụ1: Chúng ta hãy tạo một khung dữ liệu và sau đó hợp nhất chúng vào một khung dữ liệu duy nhất.Tạo DataFrame: Python3.

Phương pháp nào được sử dụng để tham gia một DataFrame khác trong Python?

Hàm concat () trong gấu trúc được sử dụng để nối các cột hoặc hàng từ khung dữ liệu này sang khung khác.