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

Pandas DataFrame如何按model匹配将item_price值分配到对应列

实现方案

你要的效果本质是DataFrame的行转列操作,pandas内置方法即可实现,分两种场景选择对应代码:

场景1:同一个品牌+同一个model对应唯一item_price

直接使用pivot方法:

import pandas as pd

# 以品牌为行维度,model为列维度,用item_price填充对应位置
result_df = temp.pivot(index='品牌', columns='model', values='item_price').reset_index()
# 清除自动生成的列名前缀
result_df.columns.name = None
# 重置索引保持格式整齐
result_df = result_df.reset_index(drop=True)

场景2:同一个品牌+同一个model对应多个item_price

使用支持聚合逻辑的pivot_table方法,可自定义多价格的处理规则:

import pandas as pd
import numpy as np

result_df = temp.pivot_table(
    index='品牌',
    columns='model',
    values='item_price',
    # 多价格聚合规则:list=保留所有价格为列表,sum=求和,np.mean=求均值,'first'=取第一个值
    aggfunc=list,
    # 无对应价格的位置填充值,按需修改,比如填0、空字符串等
    fill_value=np.nan
).reset_index()
result_df.columns.name = None
result_df = result_df.reset_index(drop=True)

效果验证示例

假设你的temp结构如下:

品牌modelitem_price
小米133999
小米13 Pro4999
小米133699

使用场景2的代码(aggfunc设为list)后,输出结果为:

品牌1313 Pro
小米[3999,3699]4999

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 15:48:01