วิธีสร้าง dataframe ที่ซ้อนกันใน pandas (พร้อมตัวอย่าง)
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อซ้อน DataFrames แพนด้าหลายตัวภายใน DataFrame อื่น:
df_all = pd. DataFrame ({' idx ':[1,2,3],' dfs ':[df1,df2,df3]})
ตัวอย่างนี้จะซ้อน DataFrame สามตัว ( df1 , df2 , df3 ) ลงใน DataFrame ที่มีขนาดใหญ่กว่าที่เรียกว่า df_all
จากนั้นคุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเข้าถึง DataFrames ที่ซ้อนกันเฉพาะตัวใดตัวหนึ่ง:
#display first nested DataFrame print (df_all[' dfs ']. iloc [0])
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: สร้าง DataFrame ที่ซ้อนกันใน Pandas
สมมติว่าเรามี DataFrames แพนด้าสามตัว:
import pandas as pd #create first DataFrame df1 = pd. DataFrame ({' item ': ['A', 'B', 'C', 'D', 'E'], ' sales ': [18, 22, 19, 14, 30]}) print (df1) item sales 0 to 18 1 B 22 2 C 19 3 D 14 4 E 30 #create second DataFrame df2 = pd. DataFrame ({' item ': ['F', 'G', 'H', 'I', 'J'], ' sales ': [10, 12, 13, 13, 19]}) print (df2) item sales 0 F 10 1 G 12 2:13 a.m. 3 I 13 4 Day 19 #create third DataFrame df3 = pd. DataFrame ({' item ': ['K', 'L', 'M', 'N', 'O'], ' sales ': [41, 22, 28, 25, 18]}) print (df3) item sales 0 K 41 1 L 22 2 M 28 3 N 25 4 O 18
ตอนนี้ สมมติว่าเราต้องการสร้าง DataFrame ขนาดใหญ่เพื่อเก็บ DataFrame ทั้งสามนี้
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อทำสิ่งนี้:
df_all = pd. DataFrame ({' idx ':[1,2,3],' dfs ':[df1,df2,df3]})
จากนั้นเราสามารถใช้ฟังก์ชัน pandas iloc เพื่อเข้าถึง DataFrames ที่ซ้อนกันเฉพาะได้
ตัวอย่างเช่น เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเข้าถึง DataFrame ที่ซ้อนกันตัวแรก:
#display first nested DataFrame print (df_all[' dfs ']. iloc [0]) item sales 0 to 18 1 B 22 2 C 19 3 D 14 4 E 30
หรือเราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อเข้าถึง DataFrame ที่ซ้อนกันที่สอง:
#display second nested DataFrame print (df_all[' dfs ']. iloc [1]) item sales 0 F 10 1 G 12 2:13 a.m. 3 I 13 4 Day 19
และอื่นๆ
แหล่งข้อมูลเพิ่มเติม
บทช่วยสอนต่อไปนี้จะอธิบายวิธีการใช้งานฟังก์ชันทั่วไปอื่น ๆ ในแพนด้า:
วิธีแปลงดัชนีเป็นคอลัมน์ใน Pandas
วิธีเปลี่ยนชื่อดัชนีใน Pandas
วิธีการตั้งค่าคอลัมน์เป็นดัชนีใน Pandas