我有2个dataframes:计算支出的不同类型 - 熊猫/ numpy的 - Python的
df1
+------------+-------------+------+
| Product ID | Cost Method | Rate |
+------------+-------------+------+
| 10 | CPM | 10 |
| 20 | CPC | 0.3 |
| 30 | CPCV | 0.4 |
| 40 | FLF | 100 |
| 50 | VAD | 0 |
| 60 | CPM | 0.1 |
+------------+-------------+------+
df2
+--------+------------+-------------+--------+-----------------+
| Date | Product ID | Impressions | Clicks | Completed Views |
+--------+------------+-------------+--------+-----------------+
| 01-Jan | 10 | 300 | 4 | 0 |
| 02-Jan | 20 | 30 | 3 | 0 |
| 03-Jan | 30 | 200 | 4 | 20 |
| 02-Jan | 40 | 300 | 4 | 0 |
| 02-Jan | 40 | 500 | 4 | 0 |
| 03-Jan | 40 | 200 | 3 | 0 |
| 04-Jan | 90 | 3000 | 3 | 0 |
| 05-Jan | 50 | 3000 | 5 | 0 |
+--------+------------+-------------+--------+-----------------+
理想的输出是这样的:
+--------+------------+-------------+--------+-----------------+--------+
| Date | Product ID | Impressions | Clicks | Completed Views | Spend |
+--------+------------+-------------+--------+-----------------+--------+
| 01-Jan | 10 | 300 | 4 | 0 | $3 |
| 02-Jan | 20 | 30 | 3 | 0 | $1 |
| 03-Jan | 30 | 200 | 4 | 20 | $8 |
| 02-Jan | 40 | 300 | 4 | 0 | $50 |
| 02-Jan | 40 | 500 | 4 | 0 | $50 |
| 03-Jan | 40 | 200 | 3 | 0 | $- |
| 04-Jan | 90 | 3000 | 3 | 0 | $- |
| 05-Jan | 50 | 3000 | 5 | 0 | $- |
+--------+------------+-------------+--------+-----------------+--------+
其中:
- 产品匹配通过其ID如果ID不能匹配,则 产品支出计算在0
- 其中FLF计算为该产品每天总展示次数的总和 ,并且如果该总和 超过了某个最低限制,例如, 600次展示,则应用价格 。如果有在同一天两个或多个条目,然后 速率同样受到次计数它出现在 同日,分
- 的地方,如果一个产品是VAD,那么支出为0
- 当中共作为速率倍计算,其中CPM作为率*(曝光/ 1000)
嗨,我不是故意粗鲁,但这不是一项家庭作业服务。你尝试过什么吗?你遇到什么特定的路障 –
嗨朱利安,绝对!最大的问题是确保FLF是按当天的总金额计算的,然后价值按发生的时间分割 –