用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()
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
热门推荐
10 广西考试祝福语结婚简短
11 猪年祝福语简短小孩
12 元旦祝福语送长辈简短
13 恭喜二宝祝福语简短
14 祝福语暖心话简短
15 国庆中秋祝福语简短兄弟
16 朋友订婚的祝福语简短
17 送弟弟中秋祝福语简短
18 爱生日祝福语简短独特