ป้อนข้อมูล −
สมมติว่าคุณมี DataFrame และผลลัพธ์สำหรับการย้ายดัชนีและคอลัมน์คือ
Transposed DataFrame is 0 1 0 1 4 1 2 5 2 3 6
โซลูชันที่ 1
-
กำหนด DataFrame
-
ตั้งค่าความเข้าใจรายการที่ซ้อนกันเพื่อทำซ้ำแต่ละองค์ประกอบในข้อมูลรายการแบบสองมิติและเก็บไว้ในผลลัพธ์
result = [[data[i][j] for i in range(len(data))] for j in range(len(data[0]))
-
แปลงผลลัพธ์เป็น DataFrame
df2 = pd.DataFrame(result)
ตัวอย่าง
ให้เราดูการใช้งานที่สมบูรณ์เพื่อความเข้าใจที่ดีขึ้น -
import pandas as pd data = [[1,2,3],[4,5,6]] df = pd.DataFrame(data) print("Original DataFrame is\n", df) result = [[data[i][j] for i in range(len(data))] for j in range(len(data[0]))] df2 = pd.DataFrame(result) print("Transposed DataFrame is\n", df2)
ผลลัพธ์
Original DataFrame is 0 1 2 0 1 2 3 1 4 5 6 Transposed DataFrame is 0 1 0 1 4 1 2 5 2 3 6
โซลูชันที่ 2
-
กำหนด DataFrame
-
ใช้วิธีการทรานสโพส df.T หรือ df.transpose() กับ DataFrame
df.transpose() # or df.T
ตัวอย่าง
ให้เราดูการใช้งานที่สมบูรณ์เพื่อความเข้าใจที่ดีขึ้น -
import pandas as pd data = [[1,2,3],[4,5,6]] df = pd.DataFrame(data) print("Original DataFrame is\n", df) print("Transposed DataFrame is\n", df.transpose())
ผลลัพธ์
Original DataFrame is 0 1 2 0 1 2 3 1 4 5 6 Transposed DataFrame is 0 1 0 1 4 1 2 5 2 3 6
โซลูชันที่ 3
-
กำหนด DataFrame
-
วิธี Zip ส่งคืนตัววนซ้ำของทูเพิล ใช้เพื่อคลายซิปรายการสองมิติโดยใช้ * และซิป มีการกำหนดไว้ด้านล่าง
result = zip(*data)
-
แปลงผลลัพธ์เป็น DataFrame
df2 = pd.DataFrame(result)
ตัวอย่าง
ให้เราดูการใช้งานที่สมบูรณ์เพื่อความเข้าใจที่ดีขึ้น -
import pandas as pd data = [[1,2,3],[4,5,6]] df = pd.DataFrame(data) print("Original DataFrame is\n", df) result = zip(*data) df2 = pd.DataFrame(result) print("Transposed DataFrame is\n", df2)
ผลลัพธ์
Original DataFrame is 0 1 2 0 1 2 3 1 4 5 6 Transposed DataFrame is 0 1 0 1 4 1 2 5 2 3 6