使用 Python 編寫程式,對給定 DataFrame 的索引和列進行轉置。
輸入 -
假設您有一個 DataFrame,並且索引和列轉置的結果為:
Transposed DataFrame is 0 1 0 1 4 1 2 5 2 3 6
方案 1
設定巢狀列表推導式,迭代二維列表資料中的每個元素,並將結果儲存在 result 中。
定義一個 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
設定巢狀列表推導式,迭代二維列表資料中的每個元素,並將結果儲存在 result 中。
對 DataFrame 應用轉置方法 df.T 或 df.transpose()。
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
設定巢狀列表推導式,迭代二維列表資料中的每個元素,並將結果儲存在 result 中。
zip 方法返回一個元組迭代器。使用 * 和 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
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP