如何将给定DataFrame转换为指定矩阵形式并展示绘制?
将DataFrame转换为指定对称矩阵形式
原始DataFrame
import pandas as pd # 构造原始DataFrame data = { 'age': [0.0, 3.654, 6.43, 2.33], 'size': [3.433, 0.0, 1.33, 8.3], 'gender': [3.454, 5.0, 0.0, 1.2], 'time': [2.165, 4.88, 3.56, 0.0] } df = pd.DataFrame(data, index=[1,2,3,4]) print(df)
输出:
age size gender time 1 0.000 3.433 3.454 2.165 2 3.654 0.000 5.000 4.880 3 6.430 1.330 0.000 3.560 4 2.330 8.300 1.200 0.000
解决方案
直接转置无效是因为原始DataFrame的索引是数字,而非对应的特征名称。只需两步即可得到目标矩阵:
- 将DataFrame的索引替换为列名列表(原始1-4行分别对应age、size、gender、time的行数据)
- 对修改后的DataFrame执行转置操作
代码实现:
# 替换索引为列名 df.index = df.columns # 执行转置 result_df = df.T print(result_df)
输出结果
age size gender time age 0.0 3.654 6.43 2.33 size 3.433 0.0 1.33 8.3 gender 3.454 5.0 0.0 1.2 time 2.165 4.88 3.56 0.0
内容的提问来源于stack exchange,提问作者Coder
相关产品推荐
相关产品推荐

