用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

以上是 用Python编写程序以转置给定DataFrame中的索引和列 的全部内容, 来源链接: utcz.com/z/329774.html

回到顶部