计算不同价格类型的数据帧的价格

2024-04-26 22:57:53 发布

您现在位置:Python中文网/ 问答频道 /正文

对于我正在做的一个项目,我目前有3个数据帧。这些是针对产品、客户和订单的。下面是这些的一个简单版本,实际订单框架大约有10.000列。情况如下:产品有不同的价格类别,每个客户对这些类别都有一个特殊的价格。我目前有一个订单数据框,上面有订单-客户、产品编号、订购产品的数量和日期

现在我想在order dataframe的新列中添加订单的价格。我设法把产品分类放在那里,但我不知道如何从那里开始,甚至不知道这是否是正确的方法。任何帮助都将不胜感激,下面的数据帧图片我包括代码,使这些样本数据帧

df_产品:

df_products

df_客户:

df_customers

df_订单:

df_orders

创建数据帧的代码:

import pandas as pd 

df_products = pd.DataFrame({'product_number': [1, 2, 3], 'product': ['product 1', 'product 2', 'product 3' ], 'price_type': ['X', 'Y', 'Z']})

df_customers = pd.DataFrame({'customer_number': [1, 2, 3], 'customer': ['customer 1', 'customer 2', 'customer 3' ], 'price_x': [7.50, 10.50, 12.50], 'price_y': [6.50, 9.20, 11.30], 'price_z': [8.50, 10.10, 13.40]})

df_orders = pd.DataFrame({'order_number': [1, 2, 3], 'date': ['19-03-2020', '19-03-2020', '20-03-2020' ], 'customer_number': [1, 3, 2], 'product_number': [1, 2, 3], 'amount': [1, 2, 2]})

提前感谢:)


Tags: 数据代码订单numberdataframedf客户产品
1条回答
网友
1楼 · 发布于 2024-04-26 22:57:53

如果数据帧的长度相同,只需添加一个新列即可。在下面,我向df_订单添加了一个新列“price”,并用df_客户的值['price_y']填充它

像这样,

df_orders['price']=df_customers['price_y']

结果是,

df_orders.head()



order_number    date    customer_number     product_number  amount  price
0   1   19-03-2020  1   1   1   6.5
1   2   19-03-2020  3   2   2   9.2
2   3   20-03-2020  2   3   2   11.3

相关问题 更多 >