加载 excel 文件且未显示缺失值并尝试使用正则表达式清除手机号码中的值时出现问题

Posted

技术标签:

【中文标题】加载 excel 文件且未显示缺失值并尝试使用正则表达式清除手机号码中的值时出现问题【英文标题】:Problem loading excel file and not showing the missing values and trying to use regex to clear and values in a cellphone number 【发布时间】:2021-11-16 08:57:57 【问题描述】:

我有一个 Excel 文件,其中包含一些客户提供的大量日期。

由于某些原因,在读取 excel 文件时,jupyter notebook 无法可视化缺少值的字段。 缺失值的原因是客户未填写此数据。

我在导出数据时尝试了很多东西。

df = pd.read_excel(r'Recomeco/Decisões 06.09 a 12.09.xlsx', index_col=0, skiprows=2)#, na_values=['CELULAR', 'EMAIL']) #keep_default_na = False, na_filter= False, verbose= True)

我不知道这是什么原因。

在 CELULAR 列中:

Cellphone_original     Cellphone_GOAL
(12)98272-8620          55 12 98272-8620

我用过这个功能:

def split_CELULAR(celular):
    number = re.findall(r"\d+-\d+", celular)
    return number

df['CELULAR1'] = df['CELULAR'].apply(split_CELULAR)

Value find: 98272-8620

但我必须将值 - 55 12 添加到每一行,我做不到。

有人可以帮我吗?

【问题讨论】:

【参考方案1】:

你可以使用

df['CELULAR1'] = df['CELULAR'].str.replace(r'^\(\d+\)', '55 12 ', regex=True)

正则表达式(参见its online demo)表示:

^ - 字符串开头 \( - 一个 ( 字符 \d+ - 一位或多位数字 -\) - ) 字符。

注意regex = True 参数,有必要避免警告,请参阅FutureWarning: The default value of regex will change from True to False in a future version 线程。

【讨论】:

以上是关于加载 excel 文件且未显示缺失值并尝试使用正则表达式清除手机号码中的值时出现问题的主要内容,如果未能解决你的问题,请参考以下文章

填写缺失的日期值并根据前一行填充第二列

PHPExcel - Excel5 - 创建折线图 - 图表缺失

在 Mongoose (mongodb node.js) 中,如何更新现有值并插入缺失值,而不删除未指定的值?

ie浏览器下载excel文件大不完整

密码需要 Flex 正则表达式验证表达式,仅允许使用字母数字值并需要一个数字

ie浏览器下载excel文件大不完整