Pandas pivot在新列

时间:2018-01-14 00:06:39

标签: python pandas dataframe

我正在使用包含以下列的pandas数据框:

“产品ID”  “价格手册”  “列出价格货币”和  “价格表”。

每种产品最多使用3种不同的货币重复4次。我成功完成了一个数据透视,现在列“产品ID”具有唯一的产品ID,每个List价格和货币在同一行。

我在尝试将第四种货币添加到列表时遇到问题,该列表将是“Intl”。我试图在枢轴步骤之前执行此操作。这就是我用来在“列出价格货币”行中附加值,它似乎有效。当我打印数据帧时,行中的值成功更新为“Intl”。

datagrouped['List Price Currency'][df['Price Book Name'].str.contains("International",na=False)] = 'Intl'

现在,当我再次尝试使用数据透视表并查看表时,确实有一个“Intl”列,但数据框现在填充了NaN值。这就是我的代码的支点步骤。

df99 = datagrouped.drop_duplicates(['Product Code','List Price Currency'])

i = df99.pivot('Product Code', 'List Price Currency', 'List Price')\
     \
     .reset_index()\
     .rename_axis(None, 1)

enter image description here

我已经检查过几乎所有产品的所有栏目都应该有价格。在获取最终不正确的数据帧的过程中,我做错了什么?任何指导都将非常感激。

0 个答案:

没有答案