วิธีใช้ rbind ใน python (เทียบเท่ากับ r)


ฟังก์ชัน rbind ใน R ย่อมาจาก row-bind สามารถใช้เพื่อรวมเฟรมข้อมูลเข้าด้วยกันตามแถว

เราสามารถใช้ฟังก์ชัน pandas concat() เพื่อทำหน้าที่เทียบเท่าใน Python:

 df3 = pd. concat ([df1, df2])

ตัวอย่างต่อไปนี้แสดงวิธีใช้ฟังก์ชันนี้ในทางปฏิบัติ

ตัวอย่างที่ 1: ใช้ rbind ใน Python ที่มีคอลัมน์เท่ากัน

สมมติว่าเรามี DataFrames แพนด้าสองตัวต่อไปนี้:

 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() เพื่อเชื่อมโยง DataFrames ทั้งสองนี้เข้าด้วยกันอย่างรวดเร็วด้วยบรรทัด:

 #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)
วิธีทำ VLOOKUP ใน Pandas
วิธีลบแถวที่มีค่าเฉพาะใน Pandas

เพิ่มความคิดเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *