在 pandas 数据帧中使用REPLACE和str.startswith()来重命名值 [英] Using replace and str.startswith() in a pandas dataframe to rename values

查看:65
本文介绍了在 pandas 数据帧中使用REPLACE和str.startswith()来重命名值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个名为SOURCE的列,它包含数百行文本。 问题是,其中一些可以组合在一起,我正在努力在 pandas 数据帧中做到这一点。以下是我的代码:

df.source.replace({
                   df.source.str.startswith('share', na=False): 'sharePet',
                   df.source.str.startswith('2012-01-08', na=False): 'shareDate'

                 })

此外,这是否适用于以日期开头的第二行?如果不是,我可以将其保留为第一行和其他文本分组。

想要一些建议。

推荐答案

您可以使用字典进行迭代:

d = {'share': 'sharePet', '2012-01-08': 'shareDate'}

for k, v in d.items():
    df.loc[df['source'].str.startswith(k, na=False), 'source'] = v
Pandasstr.startswith仅适用于字符串。您可以通过set(map(type, df['source']))轻松查看您的系列中存在哪些类型。

这篇关于在 pandas 数据帧中使用REPLACE和str.startswith()来重命名值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆