【发布时间】:2017-12-28 01:42:02
【问题描述】:
我有以下数据框:
df1
name phone duration(m)
Luisa 443442 1
Jack 442334 6
Matt 442212 2
Jenny 453224 1
df2
prefix charge rate
443 0.8 0.3
446 0.8 0.4
442 0.6 0.1
476 0.8 0.3
我想要的输出是将每个电话号码与其前缀匹配(前缀比电话号码多)并通过将每个电话号码的通话时长乘以相应的前缀费用加上相应的前缀来计算每次通话的费用率。
输出例子
df1
name phone duration(m) bill
Luisa 443442 1 (example: 1x0.3+0.8)
Jack 442334 6 (example: 6x0.1+0.6)
Matt 442212 2
Jenny 453224 1
我的想法是将 df2 转换为像这样的字典 dict={'443':[0.3,0.8],'442':[0.1,0.6]...} 这样我就可以将每个数字与 dict 键匹配然后使用该匹配键的相应值执行操作。但是不起作用,还想知道是否有更好的选择。
【问题讨论】:
标签: python-2.7 pandas dictionary dataframe startswith