详解pandas.DataFrame.transpose()(转置数据框)函数使用方法

  • Post category:Python

pandas.DataFrame.transpose() 是Pandas数据处理库中的一个函数,用于转置数据框(DataFrame)。转置操作将数据框的行列互换,实现取得跨列表示的数据的目的。下面是该函数的完整攻略:

语法

DataFrame.transpose(*args, **kwargs)

参数

  • args:参数列;
  • kwargs:关键字参数列。

返回值

  • DataFrame:返回转置后的 DataFrame,行列互换。

示例1

import pandas as pd

# 构建一个简单数据框
data = {'name': ['小明', '小张', '小李'], 'age': [18, 19, 20], 'gender': ['男', '男', '女']}
df = pd.DataFrame(data)

# 输出原始数据框
print('原始数据框:')
print(df)

# 对数据框进行转置操作
df_t = df.transpose()

# 输出转置后的数据框
print('转置后的数据框:')
print(df_t)

结果:

原始数据框:
  name  age gender
0   小明   18      男
1   小张   19      男
2   小李   20      女
转置后的数据框:
          0    1    2
name     小明   小张   小李
age      18   19   20
gender   男    男    女

解释:可以看到使用转置函数 pandas.DataFrame.transpose() 后,原始数据框行列互换了,变成了上面转置后的数据框。

示例2

import pandas as pd

# 构建一个复杂数据框
data = {'gene': {'gene1': 3.3, 'gene2': 4.5, 'gene3': 3.8},
        'sample1': {'gene1': 1, 'gene2': 2, 'gene3': 2},
        'sample2': {'gene1': 4, 'gene2': 4, 'gene3': 6},
        'sample3': {'gene1': 6, 'gene2': 7, 'gene3': 8},
        'sample4': {'gene1': 3, 'gene2': 3, 'gene3': 2}}

df = pd.DataFrame(data)

# 输出原始数据框
print('原始数据框:')
print(df)

# 对数据框进行转置操作
df_t = df.transpose()

# 输出转置后的数据框
print('转置后的数据框:')
print(df_t)

结果:

原始数据框:
       gene  sample1  sample2  sample3  sample4
gene1   3.3        1        4        6        3
gene2   4.5        2        4        7        3
gene3   3.8        2        6        8        2

转置后的数据框:
          gene  gene1  gene2  gene3
sample1   3.3      1      2      2
sample2   4.5      4      4      6
sample3   3.8      6      7      8
sample4   3.0      3      3      2

解释:可以看到使用转置函数 pandas.DataFrame.transpose() 后,原始数据框行列互换了,变成了上面转置后的数据框,这里从样品 (sample) 的角度分析表达量 (expression)。