首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >根据条件替换Pandas DF列中的值

根据条件替换Pandas DF列中的值
EN

Stack Overflow用户
提问于 2019-06-20 05:32:36
回答 2查看 445关注 0票数 1

我是Python的新手,所以我提前为这段可能粗俗的代码道歉。我正在尝试完成一个web抓取项目,目前我有一个包含价格列(当前为字符串)的数据帧。我的两难境地是,我想迭代每一行,如果价格显示为每周(包含pw),那么我想将价格更新为每月;即乘以4。对于价格已经是每月的行,我不想做任何事情。

代码语言:javascript
复制
mydf = pd.DataFrame({"prices":["350pw", "1000pm", "600pw", "1000pm", "1000pm"], "Column2":["H", "E", "L", "P", "!"]})

这将生成:

代码语言:javascript
复制
    prices Column2
0    350pw       H
1   1000pm       E
2    600pw       L
3   1000pm       P
4   1000pm       !

我能够找到行并只提取数字。从那里我转换为int,乘以4,但无法对int使用replace函数。

代码语言:javascript
复制
for x in mydf[mydf['prices'].str.contains('pw')]['prices']:
    weekly_price = int(x[0:3])
    monthly_price_int = weekly_price * 4

不知道下一步该怎么走……

最终结果将是:

代码语言:javascript
复制
    prices Column2
0   1400pw       H
1   1000pm       E
2   2400pw       L
3   1000pm       P
4   1000pm       !
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56676160

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档