Hướng dẫn how do you merge two tables in python? - làm thế nào để bạn hợp nhất hai bảng trong python?

Một tính năng thiết yếu được cung cấp bởi Pandas là các hoạt động hiệu suất và hợp nhất hiệu suất cao, hiệu suất cao của nó. Nếu bạn đã từng làm việc với cơ sở dữ liệu, bạn nên làm quen với loại tương tác dữ liệu này. Giao diện chính cho điều này là hàm

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
7 và chúng ta sẽ thấy một vài ví dụ về cách thức hoạt động của nó trong thực tế.

Show

Để thuận tiện, chúng tôi sẽ bắt đầu bằng cách xác định lại chức năng

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
8 từ phần trước:

In [1]:

import pandas as pd
import numpy as np

class display(object):
    """Display HTML representation of multiple objects"""
    template = """

{0}

{1}
"""
def __init__(self, *args): self.args = args def _repr_html_(self): return '\n'.join(self.template.format(a, eval(a)._repr_html_()) for a in self.args) def __repr__(self): return '\n\n'.join(a + '\n' + repr(eval(a)) for a in self.args)

Đại số quan hệ

Hành vi được thực hiện trong

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 là một tập hợp con của cái được gọi là đại số quan hệ, đây là một bộ quy tắc chính thức để thao tác dữ liệu quan hệ và tạo thành nền tảng khái niệm của các hoạt động có sẵn trong hầu hết các cơ sở dữ liệu. Sức mạnh của phương pháp đại số quan hệ là nó đề xuất một số hoạt động nguyên thủy, trở thành khối xây dựng của các hoạt động phức tạp hơn trên bất kỳ bộ dữ liệu nào. Với từ vựng về các hoạt động cơ bản này được triển khai hiệu quả trong cơ sở dữ liệu hoặc chương trình khác, có thể thực hiện một loạt các hoạt động tổng hợp khá phức tạp.

Pandas thực hiện một số khối xây dựng cơ bản này trong hàm

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 và phương pháp
df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
1 liên quan của
df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
2 và
df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
3S. Như chúng ta sẽ thấy, những điều này cho phép bạn liên kết hiệu quả dữ liệu từ các nguồn khác nhau.

Các loại tham gia

Hàm

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 thực hiện một số loại tham gia: tham gia một-một, nhiều một và nhiều-nhiều. Tất cả ba loại nối được truy cập thông qua một cuộc gọi giống hệt nhau đến giao diện
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9; Loại tham gia được thực hiện phụ thuộc vào dạng dữ liệu đầu vào. Ở đây chúng tôi sẽ trình bày các ví dụ đơn giản về ba loại hợp nhất và thảo luận về các tùy chọn chi tiết bên dưới.

Tham gia một-một

Có lẽ loại expresion hợp nhất đơn giản nhất là sự tham gia một-một, theo nhiều cách rất giống với sự kết hợp của cột được thấy trong việc kết hợp các bộ dữ liệu: Concat & append. Như một ví dụ cụ thể, hãy xem xét hai

df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
6 sau đây chứa thông tin về một số nhân viên trong một công ty:

In [2]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')

Out[2]:

df1

Nhân viêntập đoàn
0BobKế toán
1JakeKỹ thuật
2LisaKỹ thuật
3LisaKiện

df2

Nhân viênhire_date
0Lisa2004
1Bob2008
2Jake2012
3Lisa2014

Kiện

In [3]:

df3 = pd.merge(df1, df2)
df3

Out[3]:

Nhân viêntập đoànhire_date
0BobKế toán2008
1JakeKỹ thuật2012
2LisaKỹ thuật2004
3LisaKiện2014

Giờ

Để kết hợp thông tin này thành một df5 = pd.DataFrame({'group': ['Accounting', 'Accounting', 'Engineering', 'Engineering', 'HR', 'HR'], 'skills': ['math', 'spreadsheets', 'coding', 'linux', 'spreadsheets', 'organization']}) display('df1', 'df5', "pd.merge(df1, df5)") 7, chúng ta có thể sử dụng hàm df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'], 'supervisor': ['Carly', 'Guido', 'Steve']}) display('df3', 'df4', 'pd.merge(df3, df4)') 9:

Hàm

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 nhận ra rằng mỗi
df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
7 có cột "nhân viên" và tự động tham gia bằng cách sử dụng cột này làm khóa. Kết quả của sự hợp nhất là một
df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
7 mới kết hợp thông tin từ hai đầu vào. Lưu ý rằng thứ tự của các mục trong mỗi cột không nhất thiết phải được duy trì: trong trường hợp này, thứ tự của cột "Nhân viên" khác nhau giữa
display('df1', 'df2', "pd.merge(df1, df2, on='employee')")
2 và
display('df1', 'df2', "pd.merge(df1, df2, on='employee')")
3 và hàm
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 tính chính xác cho việc này. Ngoài ra, hãy nhớ rằng sự hợp nhất nói chung sẽ loại bỏ chỉ mục, ngoại trừ trong trường hợp đặc biệt hợp nhất theo chỉ mục (xem các từ khóa
display('df1', 'df2', "pd.merge(df1, df2, on='employee')")
5 và
display('df1', 'df2', "pd.merge(df1, df2, on='employee')")
6, được thảo luận trong giây lát).

In [4]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')

Out[4]:

df3

Nhân viêntập đoànhire_date
0BobKế toán2008
1JakeKỹ thuật2012
2LisaKỹ thuật2004
3LisaKiện2014

df4

tập đoànBob
0Kế toánJake
1Kỹ thuậtLisa
2KiệnGiờ

Để kết hợp thông tin này thành một

df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
7, chúng ta có thể sử dụng hàm
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9:

Nhân viêntập đoànhire_dateBob
0BobKế toán2008 Jake
1JakeKỹ thuật2012 Lisa
2LisaKỹ thuật2004 Lisa
3LisaKiện2014 Giờ

Để kết hợp thông tin này thành một

df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
7, chúng ta có thể sử dụng hàm
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9:

Hàm df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'], 'supervisor': ['Carly', 'Guido', 'Steve']}) display('df3', 'df4', 'pd.merge(df3, df4)') 9 nhận ra rằng mỗi df5 = pd.DataFrame({'group': ['Accounting', 'Accounting', 'Engineering', 'Engineering', 'HR', 'HR'], 'skills': ['math', 'spreadsheets', 'coding', 'linux', 'spreadsheets', 'organization']}) display('df1', 'df5', "pd.merge(df1, df5)") 7 có cột "nhân viên" và tự động tham gia bằng cách sử dụng cột này làm khóa. Kết quả của sự hợp nhất là một df5 = pd.DataFrame({'group': ['Accounting', 'Accounting', 'Engineering', 'Engineering', 'HR', 'HR'], 'skills': ['math', 'spreadsheets', 'coding', 'linux', 'spreadsheets', 'organization']}) display('df1', 'df5', "pd.merge(df1, df5)") 7 mới kết hợp thông tin từ hai đầu vào. Lưu ý rằng thứ tự của các mục trong mỗi cột không nhất thiết phải được duy trì: trong trường hợp này, thứ tự của cột "Nhân viên" khác nhau giữa display('df1', 'df2', "pd.merge(df1, df2, on='employee')") 2 và display('df1', 'df2', "pd.merge(df1, df2, on='employee')") 3 và hàm df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'], 'supervisor': ['Carly', 'Guido', 'Steve']}) display('df3', 'df4', 'pd.merge(df3, df4)') 9 tính chính xác cho việc này. Ngoài ra, hãy nhớ rằng sự hợp nhất nói chung sẽ loại bỏ chỉ mục, ngoại trừ trong trường hợp đặc biệt hợp nhất theo chỉ mục (xem các từ khóa display('df1', 'df2', "pd.merge(df1, df2, on='employee')") 5 và display('df1', 'df2', "pd.merge(df1, df2, on='employee')") 6, được thảo luận trong giây lát).

Tham gia nhiều-một

In [5]:

df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")

Out[5]:

df1

Nhân viêntập đoàn
0BobKế toán
1JakeKỹ thuật
2LisaKỹ thuật
3LisaKiện

df5

tập đoànBob
0Kế toánJake
1Kế toánJake
2Kỹ thuậtLisa
3Kỹ thuậtLisa
4Kiệnbảng tính
5Giờcơ quan

PD.merge (DF1, DF5)

Nhân viêntập đoànkỹ năng
0BobKế toánmôn Toán
1BobKế toánbảng tính
2môn ToánJakeKỹ thuật
3môn ToánJakeKỹ thuật
4Mã hóaJakeKỹ thuật
5Mã hóaJakeKỹ thuật
6Mã hóaGiờbảng tính
7Mã hóaGiờcơ quan

PD.merge (DF1, DF5)

Nhân viên

tập đoàn

kỹ năng

Bob

In [6]:

display('df1', 'df2', "pd.merge(df1, df2, on='employee')")

Out[6]:

df1

Nhân viêntập đoàn
0BobKế toán
1môn ToánJake
2Mã hóaJake
3Mã hóaGiờ

df2

Nhân viênhire_date
0Mã hóa2004
1Bob2008
2môn Toán2012
3Mã hóa2014

Linux

Nhân viêntập đoànhire_date
0BobKế toán2008
1môn ToánJake2012
2Mã hóaJake2004
3Mã hóaGiờ2014

Linux

Lisa

Kiện

In [7]:

df3 = pd.DataFrame({'name': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'salary': [70000, 80000, 120000, 90000]})
display('df1', 'df3', 'pd.merge(df1, df3, left_on="employee", right_on="name")')

Out[7]:

df1

Nhân viêntập đoàn
0BobKế toán
1môn ToánJake
2Mã hóaJake
3Mã hóaGiờ

df3

LinuxLisa
0Bob70000
1môn Toán80000
2Mã hóa120000
3Mã hóa90000

Linux

Nhân viêntập đoànLinuxLisa
0BobKế toánBob70000
1môn ToánJakemôn Toán80000
2Mã hóaJakeMã hóa120000
3Mã hóaGiờMã hóa90000

Linux

In [8]:

pd.merge(df1, df3, left_on="employee", right_on="name").drop('name', axis=1)

Out[8]:

Nhân viêntập đoànLisa
0BobKế toán70000
1môn ToánJake80000
2Mã hóaJake120000
3Mã hóaGiờ90000

Linux

Lisa

In [9]:

df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')

Kiện

df1a

tập đoàn
Nhân viên
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
Kế toán
Đặc điểm kỹ thuật của khóa hợp nhấtJake
Kỹ thuậtJake
Kỹ thuậtGiờ

df2a

hire_date
Nhân viên
Kỹ thuật2004
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
2008
Đặc điểm kỹ thuật của khóa hợp nhất2012
Kỹ thuật2014

Mã hóa

In [10]:

display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")

Out[10]:

df1a

tập đoàn
Nhân viên
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
Kế toán
Đặc điểm kỹ thuật của khóa hợp nhấtJake
Kỹ thuậtJake
Kỹ thuậtGiờ

df2a

hire_date
Nhân viên
Kỹ thuật2004
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
2008
Đặc điểm kỹ thuật của khóa hợp nhất2012
Kỹ thuật2014

Mã hóa

tập đoànhire_date
Nhân viên
Kỹ thuậtJake2004
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
Kế toán2008
Đặc điểm kỹ thuật của khóa hợp nhấtJake2012
Kỹ thuậtGiờ2014

Mã hóa

In [11]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
0

Out[11]:

df1a

tập đoàn
Nhân viên
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
Kế toán
Đặc điểm kỹ thuật của khóa hợp nhấtJake
Kỹ thuậtJake
Kỹ thuậtGiờ

df2a

hire_date
Nhân viên
Kỹ thuật2004
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
2008
Đặc điểm kỹ thuật của khóa hợp nhất2012
Kỹ thuật2014

df1a.join(df2a)

tập đoànhire_date
Nhân viên
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
Kế toán2008
Đặc điểm kỹ thuật của khóa hợp nhấtJake2012
Kỹ thuậtJake2004
Kỹ thuậtGiờ2014

Mã hóa

In [12]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
1

Out[12]:

df1a

tập đoàn
Nhân viên
Ba loại tham gia này có thể được sử dụng với các công cụ gấu trúc khác để thực hiện một loạt các chức năng. Nhưng trong thực tế, các bộ dữ liệu hiếm khi sạch sẽ như cái chúng tôi đang làm việc ở đây. Trong phần sau, chúng tôi sẽ xem xét một số tùy chọn được cung cấp bởi
df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
9 cho phép bạn điều chỉnh cách thức hoạt động tham gia.
Kế toán
Đặc điểm kỹ thuật của khóa hợp nhấtJake
Kỹ thuậtJake
Kỹ thuậtGiờ

df3

LinuxLisa
0Bob70000
1môn Toán80000
2Mã hóa120000
3Mã hóa90000

Linux

tập đoànLinuxLisa
0Kế toánBob70000
1Jakemôn Toán80000
2JakeMã hóa120000
3GiờMã hóa90000

Linux

Lisa

Kiện

In [13]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
2

Out[13]:

df6

LinuxLisa
0Kiện
1PaulĐậu
2Marybánh mì

df7

Tênuống
0Marybánh mì
1Tênuống

rượu

Tênuốnguống
0Marybánh mìbánh mì

Tên

In [14]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
3

Out[14]:

Tênuốnguống
0Marybánh mìbánh mì

Tên

In [15]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
4

Out[15]:

df6

Tênuống
0rượu
1PaulĐậu
2Marybánh mì

df7

Tênuống
0Marybánh mì
1Tênuống

rượu

Tênuốnguống
0rượuJoseph
1PaulĐậuJoseph
2Marybánh mìbánh mì
3TênJosephuống

rượu

In [16]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
5

Out[16]:

df6

Tênuống
0rượu
1PaulĐậu
2Marybánh mì

df7

Tênuống
0Marybánh mì
1Tênuống

rượu

Tênuốnguống
0rượuJoseph
1PaulĐậuJoseph
2Marybánh mìbánh mì

Tên

uống

rượu

Joseph

In [17]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
6

Out[17]:

df8

Tênuống
0rượu1
1Joseph2
2bia3
3PD.merge (DF6, DF7)4

df9

Tênuống
0rượu3
1Joseph1
2bia4
3PD.merge (DF6, DF7)2

món ăn

Tênrank_xrank_y
0rượu1 3
1Joseph2 1
2bia3 4
3PD.merge (DF6, DF7)4 2

món ăn

In [18]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
7

Out[18]:

df8

Tênuống
0rượu1
1Joseph2
2bia3
3PD.merge (DF6, DF7)4

df9

Tênuống
0rượu3
1Joseph1
2bia4
3PD.merge (DF6, DF7)2

món ăn

Tênrank_Lrank_R
0rượu1 3
1Joseph2 1
2bia3 4
3PD.merge (DF6, DF7)4 2

món ăn

Ở đây chúng tôi đã hợp nhất hai bộ dữ liệu chỉ có một mục "tên" một điểm chung: Mary. Theo mặc định, kết quả chứa giao điểm của hai bộ đầu vào; Đây là những gì được biết đến như một tham gia bên trong. Chúng tôi có thể chỉ định điều này rõ ràng bằng cách sử dụng từ khóa df1a = df1.set_index('employee') df2a = df2.set_index('employee') display('df1a', 'df2a') 3, mặc định là df1a = df1.set_index('employee') df2a = df2.set_index('employee') display('df1a', 'df2a') 4:

Các tùy chọn khác cho từ khóa

df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
3 là
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
6,
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
7 và
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
8. Một tham gia bên ngoài trả về một sự tham gia của các cột đầu vào và điền vào tất cả các giá trị bị thiếu với NAS:

In [19]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
8

Peter

In [20]:

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
9

Out[20]:

pop.head()

state/regionpd.merge (df6, df7, how = 'outer'))NanTham gia bên trái và tham gia cùng bên phải tham gia trên các mục trái và các mục bên phải, tương ứng. Ví dụ:
0pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2012 1117489.0
1pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2012 4817528.0
2pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2010 1130966.0
3pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2010 4785570.0
4pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2011 1125763.0

areas.head()

Tất cả các tùy chọn này có thể được áp dụng đơn giản cho bất kỳ loại tham gia nào trước đó.Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
0Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:52423
1thứ hạng656425
2Bob114006
3Jake53182
4Lisa163707

abbrevs.head()

Tất cả các tùy chọn này có thể được áp dụng đơn giản cho bất kỳ loại tham gia nào trước đó.Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
0Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:pd.merge (DF6, DF7, How = 'Left')
1thứ hạngBob
2BobJake
3JakeLisa
4LisaKiện

pd.merge (df8, df9, on = "name")

Do đầu ra sẽ có hai tên cột mâu thuẫn, hàm hợp nhất tự động nối thêm hậu tố

display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
2 hoặc
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
3 để làm cho các cột đầu ra duy nhất. Nếu các mặc định này không phù hợp, có thể chỉ định một hậu tố tùy chỉnh bằng từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0:

In [21]:

df3 = pd.merge(df1, df2)
df3
0

Out[21]:

state/regionpd.merge (df6, df7, how = 'outer'))NanTham gia bên trái và tham gia cùng bên phải tham gia trên các mục trái và các mục bên phải, tương ứng. Ví dụ:Tất cả các tùy chọn này có thể được áp dụng đơn giản cho bất kỳ loại tham gia nào trước đó.
0pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2012 1117489.0 Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:
1pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2012 4817528.0 Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:
2pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2010 1130966.0 Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:
3pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2010 4785570.0 Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:
4pd.merge (DF6, DF7, How = 'Left')Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
2011 1125763.0 Cuối cùng, bạn có thể kết thúc trong trường hợp hai đầu vào của bạn có tên cột mâu thuẫn. Xem xét ví dụ này:

thứ hạng

Out[22]:

df3 = pd.merge(df1, df2)
df3
1

Bob

In [23]:

df3 = pd.merge(df1, df2)
df3
2

Out[23]:

state/regionpd.merge (df6, df7, how = 'outer'))NanTham gia bên trái và tham gia cùng bên phải tham gia trên các mục trái và các mục bên phải, tương ứng. Ví dụ:Tất cả các tùy chọn này có thể được áp dụng đơn giản cho bất kỳ loại tham gia nào trước đó.
2448Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
1990 JosephJoseph
2449Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
1990 JosephJoseph
2450Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
1991 JosephJoseph
2451Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
1991 JosephJoseph
2452Tên cột chồng chéo: Từ khóa
display('df1a', 'df2a',
        "pd.merge(df1a, df2a, left_index=True, right_index=True)")
0
Các hàng đầu ra bây giờ tương ứng với các mục ở đầu vào bên trái. Sử dụng
df1a = df1.set_index('employee')
df2a = df2.set_index('employee')
display('df1a', 'df2a')
9 hoạt động theo cách tương tự.
1993 JosephJoseph

bia

Quan trọng hơn, chúng tôi cũng thấy rằng một số mục

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
03 mới cũng không có giá trị, điều đó có nghĩa là không có mục nhập tương ứng trong khóa
df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
00! Hãy tìm ra vùng nào thiếu trận đấu này:

In [24]:

df3 = pd.merge(df1, df2)
df3
3

Out[24]:

df3 = pd.merge(df1, df2)
df3
4

Chúng tôi có thể nhanh chóng suy ra vấn đề: Dữ liệu dân số của chúng tôi bao gồm các mục cho Puerto Rico (PR) và Hoa Kỳ nói chung (Hoa Kỳ), trong khi các mục này không xuất hiện trong khóa viết tắt của tiểu bang. Chúng tôi có thể sửa chữa những thứ này một cách nhanh chóng bằng cách điền vào các mục thích hợp:

In [25]:

df3 = pd.merge(df1, df2)
df3
5

Out[25]:

df3 = pd.merge(df1, df2)
df3
6

Không còn nulls trong cột

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
03: Tất cả chúng tôi đều được thiết lập!

Bây giờ chúng ta có thể hợp nhất kết quả với dữ liệu khu vực bằng một quy trình tương tự. Kiểm tra kết quả của chúng tôi, chúng tôi sẽ muốn tham gia vào cột

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
03 trong cả hai:

In [26]:

df3 = pd.merge(df1, df2)
df3
7

Out[26]:

state/regionlứa tuổinămdân sốtiểu bangkhu vực (sq. mi)
0Aldưới 182012 1117489.0 Alabama52423.0
1Aldưới 182012 4817528.0 Alabama52423.0
2Aldưới 182010 1130966.0 Alabama52423.0
3Aldưới 182010 4785570.0 Alabama52423.0
4Aldưới 182011 1125763.0 Alabama52423.0

toàn bộ

Out[27]:

df3 = pd.merge(df1, df2)
df3
8

Một lần nữa, chúng ta hãy kiểm tra các null để xem liệu có bất kỳ sự không phù hợp nào không:

In [28]:

df3 = pd.merge(df1, df2)
df3
9

Out[28]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
0

Có nulls trong cột

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
07; Chúng ta có thể xem xét để xem khu vực nào đã bị bỏ qua ở đây:

In [29]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
1

Out[29]:

state/regionlứa tuổinămdân sốtiểu bangkhu vực (sq. mi)
0Aldưới 182012 1117489.0 Alabama52423.0
1Aldưới 182012 4817528.0 Alabama52423.0
2Aldưới 182010 1130966.0 Alabama52423.0
3Aldưới 182010 4785570.0 Alabama52423.0
4Aldưới 182011 1125763.0 Alabama52423.0

toàn bộ

In [30]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
2

Out[30]:

state/regionlứa tuổinămdân sốtiểu bangkhu vực (sq. mi)
3Aldưới 182010 4785570.0 Alabama52423.0
91toàn bộdưới 182010 713868.0 Alabama656425.0
101toàn bộdưới 182010 6408790.0 Alabama114006.0
189toàn bộdưới 182010 2922280.0 Alabama53182.0
197toàn bộdưới 182010 37333601.0 Alabama163707.0

toàn bộ

In [31]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
3

In [32]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
4

Out[32]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
5

Một lần nữa, chúng ta hãy kiểm tra các null để xem liệu có bất kỳ sự không phù hợp nào không:

Có nulls trong cột

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
07; Chúng ta có thể xem xét để xem khu vực nào đã bị bỏ qua ở đây:

Out[33]:

df4 = pd.DataFrame({'group': ['Accounting', 'Engineering', 'HR'],
                    'supervisor': ['Carly', 'Guido', 'Steve']})
display('df3', 'df4', 'pd.merge(df3, df4)')
6

Chúng tôi thấy rằng

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
08
df5 = pd.DataFrame({'group': ['Accounting', 'Accounting',
                              'Engineering', 'Engineering', 'HR', 'HR'],
                    'skills': ['math', 'spreadsheets', 'coding', 'linux',
                               'spreadsheets', 'organization']})
display('df1', 'df5', "pd.merge(df1, df5)")
7 của chúng tôi không chứa toàn bộ khu vực của Hoa Kỳ. Ví dụ, chúng tôi có thể chèn giá trị thích hợp (sử dụng tổng của tất cả các khu vực nhà nước), nhưng trong trường hợp này, chúng tôi sẽ bỏ các giá trị null vì mật độ dân số của toàn bộ Hoa Kỳ không liên quan đến cuộc thảo luận hiện tại của chúng tôi:

Bây giờ chúng tôi có tất cả các dữ liệu chúng tôi cần. Để trả lời câu hỏi quan tâm, trước tiên chúng ta hãy chọn phần dữ liệu tương ứng với năm 2000 và tổng dân số. Chúng tôi sẽ sử dụng chức năng

df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
10 để thực hiện điều này một cách nhanh chóng (điều này yêu cầu gói
df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
11 được cài đặt; xem Pandas hiệu suất cao:
df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
12 và
df1 = pd.DataFrame({'employee': ['Bob', 'Jake', 'Lisa', 'Sue'],
                    'group': ['Accounting', 'Engineering', 'Engineering', 'HR']})
df2 = pd.DataFrame({'employee': ['Lisa', 'Bob', 'Jake', 'Sue'],
                    'hire_date': [2004, 2008, 2012, 2014]})
display('df1', 'df2')
10):

Làm thế nào để bạn kết hợp các bảng trong Python?

Hàm concat () thực hiện các hoạt động nối của nhiều bảng dọc theo một trong các trục (theo hàng hóa hoặc thông thái cột).concat() function performs concatenation operations of multiple tables along one of the axes (row-wise or column-wise).

Làm cách nào để hợp nhất hai bảng trong gấu trúc?

Để tham gia các DataFrames này, Pandas cung cấp nhiều hàm như Concat (), Merge (), tham gia (), v.v. Trong phần này, bạn sẽ thực hành bằng hàm Merge () của gấu trúc.Bạn có thể nhận thấy rằng các khung dữ liệu hiện được hợp nhất vào một khung dữ liệu duy nhất dựa trên các giá trị chung có trong cột ID của cả hai khung dữ liệu.pandas provides multiple functions like concat() , merge() , join() , etc. In this section, you will practice using merge() function of pandas. You can notice that the DataFrames are now merged into a single DataFrame based on the common values present in the id column of both the DataFrames.

Làm cách nào để hợp nhất hai khung dữ liệu trong Python?

Hàm concat () có thể được sử dụng để kết hợp hai khung dữ liệu bằng cách thêm các hàng của cái này vào cái kia.Hàm hợp nhất () tương đương với mệnh đề tham gia SQL.'trái', 'phải' và 'bên trong' tham gia đều có thể.. The merge() function is equivalent to the SQL JOIN clause. 'left', 'right' and 'inner' joins are all possible.

Làm thế nào để bạn hợp nhất các bảng dữ liệu?

Dưới đây là các bước để hợp nhất các bảng sau:..
Nhấp vào tab Dữ liệu ..
Trong nhóm dữ liệu GET & Biến đổi, nhấp vào 'Nhận dữ liệu' ..
Trong thả xuống, nhấp vào 'Kết hợp các truy vấn ..
Nhấp vào 'Hợp nhất'.....
Trong hộp thoại hợp nhất, chọn 'Merge1' từ lần thả xuống đầu tiên ..
Chọn 'Vùng' từ lần thả xuống thứ hai ..