Tôi có vấn đề sau: Tôi có hai khung dữ liệu gấu trúc có độ dài khác nhau chứa một số hàng và cột có các giá trị chung và một số khung khác nhau, như thế này:
df1: df2:
Column1 Column2 Column3 ColumnA ColumnB ColumnC
0 a x x 0 c y y
1 c x x 1 e z z
2 e x x 2 a s s
3 d x x 3 d f f
4 h x x
5 k x x
Những gì tôi muốn làm bây giờ là hợp nhất hai khung dữ liệu để nếu columna và cột1 có cùng giá trị, các hàng từ DF2 được gắn vào hàng tương ứng trong DF1, như thế này:
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
Tôi biết rằng sự hợp nhất có thể thực hiện được thông qua
df1.merge[df2,left_on='Column1', right_on='ColumnA']
Nhưng lệnh này làm giảm tất cả các hàng không giống nhau trong cột1 và columna trong cả hai tệp. Thay vào đó, tôi muốn giữ các hàng này trong DF1 và chỉ cần gán NAN cho chúng trong các cột nơi các hàng khác có giá trị từ DF2, như được hiển thị ở trên. Có cách nào suôn sẻ để làm điều này trong gấu trúc không?
Cảm ơn trước!
Làm cách nào để hợp nhất hai khung dữ liệu với các cột khác nhau? Có thể tham gia các cột khác nhau đang sử dụng phương thức Concat []. DataFrame: Đó là tên DataFrame. Trục: 0 đề cập đến trục hàng và 1 đề cập đến trục cột. Tham gia: Loại tham gia .. Mở máy tính xách tay Jupyter .. Làm cách nào để hợp nhất hai khung dữ liệu với các cột khác nhau? Có thể tham gia các cột khác nhau đang sử dụng phương thức Concat []. DataFrame: Đó là tên DataFrame. Trục: 0 đề cập đến trục hàng và 1 đề cập đến trục cột. Tham gia: Loại tham gia .. Mở máy tính xách tay Jupyter .. Nhập các mô -đun cần thiết .. Syntax:
DataFrame.merge[parameters]
Tạo khung dữ liệu ..
Thực hiện các hoạt động..
Phân tích kết quả ..
Python3
import
pandas as pd
list1
=
[
7058
,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
0____9df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
2df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
6=
[
7058
,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
0____9____df1.merge[df2,left_on='Column1', right_on='ColumnA']
3____9df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
2df1.merge[df2,left_on='Column1', right_on='ColumnA']
9=
[
import
2,
import
4,
import
6import
7import
8import
9
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
5pandas as pd
1=
[
import
2,
import
4,
pandas as pd
8pandas as pd
9
import
8import
6,
import
9
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
5list1
5=
list1
7
list1
8list1
9=
0=
1=
2=
3
=
4=
5=
6=
7
=
8
=
9=
list1
7
list1
8list1
9=
0[
5=
2[
7
=
4=
57058
0=
7
7058
2
‘
=
4=
5,
1=
7
,
3
Output:
Ví dụ 2:
Dưới đây là một chương trình khác để hợp nhất một khung dữ liệu có độ dài 4 và một khung dữ liệu khác có độ dài 9.
Python3
import
pandas as pd
list1
=
[
7058
,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
0____9df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
2df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
6=
[
7058
,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
0____9____df1.merge[df2,left_on='Column1', right_on='ColumnA']
3____9df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
2df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
20df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
21,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
23,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
25,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
27df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
5df1.merge[df2,left_on='Column1', right_on='ColumnA']
9=
[
import
2,
import
4,
import
6import
7import
8import
9
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
5pandas as pd
1=
[
import
2,
import
4,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
48pandas as pd
9Các
import
8
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
58,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
60,
df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
62df1:
Column1 Column2 Column3 ColumnB ColumnC
0 a x x s s
1 c x x y y
2 e x x z z
3 d x x f f
4 h x x NaN NaN
5 k x x NaN NaN
5list1
5=
list1
7
list1
8list1
9=
0=
1=
2=
3
=
4=
5=
6=
7
=
8
=
9=
list1
7
list1
8list1
9=
0[
5=
2[
7
=
4=
57058
0=
7
7058
2
‘
=
4=
5,
1=
7
,
3
Output:
Bỏ phiếu cho khó khăn
Khó khăn hiện tại: Dễ dàng