Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

เขียนโปรแกรมใน Python เพื่อย้ายดัชนีและคอลัมน์ใน DataFrame . ที่กำหนด


ป้อนข้อมูล

สมมติว่าคุณมี 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