You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用pandas将按行存储的属性数据转换为按特征分组的宽表格式

pandas结构转换方案

实现思路

原始数据严格按照Name/Number/Age每3行对应一个完整特征记录的规则排列,先给每3行分配同一个特征分组标识,再通过透视操作直接转换为目标宽表结构即可。

完整代码实现

import pandas as pd

# 此处替换为你自己的原始DataFrame读取逻辑,下方为示例测试数据
df = pd.DataFrame({
    'Column 1': ['Name', 'Number', 'Age', 'Name', 'Number', 'Age'],
    'Column 2': ['A', 'B', 'C', 'D', 'E', 'F']
})

# 生成特征分组编号,每3行归为同一组
df['feature_group'] = 'Feature ' + (df.index // 3 + 1).astype(str)

# 透视转换为目标结构
res = df.pivot(
    index='feature_group',
    columns='Column 1',
    values='Column 2'
)

# 调整列顺序、去除多余轴名,匹配要求的输出格式
res = res[['Name', 'Number', 'Age']].rename_axis(index=None, columns=None)

输出验证

执行后打印res即可得到目标结构:

Name Number Age
Feature 1    A      B   C
Feature 2    D      E   F

特殊情况适配

如果数据不是严格按3行一组循环的规则排列,可以先筛选Column 1 == 'Name'的行索引作为分组起点,重新生成连续的分组编号即可,常规规则数据下上述代码可直接运行。

内容的提问来源于stack exchange,提问作者gandycraby1234703

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 22:54:04