首页 > 编程语言 >【PYTHON】pandas字符替换

【PYTHON】pandas字符替换

时间:2023-05-22 14:56:49浏览次数:59  
标签:字符 文本编辑 PYTHON 方法 Excel 替换 数据 pandas

处理文本数据时,常见的存储格式为 textfile 格式,对应行分隔符为"\n",列分隔符为"\t"。
而大家往往不会直接使用txt格式文件进行日常操作,Excel 更为简便通用。

因此,如果我们需要处理的 Excel 数据中,某个取值内出现了"\t"或"\n"或"\r\n"符号,转为 txt 格式文件处理将出现数据错位的情况(如上传至 Hive 作为新表)。

示例

如下为取值内包含"\n"的示例

  1. 在 Excel 中查看数据为:

  2. 复制到文本编辑器中查看数据为:

可以看出,在 Excel 中“福田区”这一取值虽然在同一单元格内,但内部进行了换行,即包含了"\n"符号,使用文本编辑器查看时即发现此处进行了换行。
如果不进行特殊处理,这样的数据直接导入 Hive 会发现如上数据错位的情况。

解决方案

  1. 简便方法
    "\t"或"\n"或"\r\n"等都属于分隔符,以文本形式附加在原有字段之后。
    简单粗暴的方法就是在 Excel、文本编辑器等软件中直接进行替换操作,将"\n"替换为""或其他非特殊字符串。
    但如果数据量较大,这样的方法一是性能问题,二是可能会有误删的情况。

  2. 使用 pandas 中 replace() 方法处理
    这个方法非常简单直观,直接对所有数据进行全局替换。

    这里需要注意的是,如果传入的是字符串,默认情况下 pandas 会进行完全匹配(exactly matching)。
    因此设置 regex=TRUE,使用正则匹配进行替换。

除此之外,还可以对 Series 或具体单元格使用 replace() 方法。
根据不同的场景及需求使用不同的方法,这样操作可以更为灵活。

参考链接

  1. Pandas中批量替换字符的方法有哪些
  2. 替换Pandas数据框架中的字符串中的字符

标签:字符,文本编辑,PYTHON,方法,Excel,替换,数据,pandas
From: https://www.cnblogs.com/xingyucn/p/17420597.html

相关文章

  • python学习笔记32:操作sqlite数据库
    importsqlite3#1.创建数据库连接#如果test.db存在,则建立连接,返回connect对象#如果test.db不存在,则新建数据库,再建立连接,返回connect对象conn=sqlite3.connect(database='test.db')#2.创建cursor对象cursor=conn.cursor()#SQL指令sql='''......
  • pandas
    转载于: http://c.biancheng.net/pandas/pandas主要特点提供一个简单、高效、带有默认标签(也可以自定义标签)的DataFrame对象;能够快速得从不同格式的文件中加载数据(如:Excel、CSV、SQL文件),然后将其转换为可处理的对象;能够按照数据的行、列标签进行分组,并对分组后的对象执行聚合......
  • Python基础知识一
    1:print输出信息  例子: ( 所有的标点符号都要是英文状态下输入,要不然会报错)print(“helloworld”)注意:python和python32:ipython在python前加i,此命令拥有和python类似的功能,但同时拥有linux下执行命令的功能ipython或者ipython33:注释在python中“#”右边的字符为注释,......
  • Python爬虫以及数据可视化分析之某站热搜排行榜信息爬取分析
    目录前言一,确定目标二,发送请求三,解析数据四,保存数据pyecharts进行可视化“某站”数据排名前10视频类型“某站”标题标签可视化“某站”喜欢视频分类概况总结前言本项目将会对“某站”热搜排行的数据进行网页信息爬取以及数据可视化分析本教程仅供学习参考!首先,准备好相关库requ......
  • Python学习
    3-13字符串类型字符串类型:str   1.定义格式:       变量='内容'           打印一行       变量="内容"           打印一行       变量='''内容'''或者三引号           可以通过回车的方式换行,且打印出......
  • Python自动化运维
    2-27在命令行窗口中启动的Python解释器中实现在Python自带的IDLE中实现print("Helloworld")编码规范每个import语句只导入一个模块,尽量避免一次导入多个模块不要在行尾添加分号“:”,也不要用分号将两条命令放在同一行建议每行不超过80个字符使用必要的空行可以增加代码的可读性运......
  • python 基本数据类型以及内置方法(有这一篇就够了)
    一、数据类型介绍在Python中,数据类型是区分数据的种类和存储方式的标识符。它定义了数据的取值范围、占用空间大小、可操作特性等。Python中常见的数据类型包括数字、字符串、列表、元组、集合和字典等。数据类型在编程中的作用主要有以下几个方面:内存空间的管理:不同的数据......
  • python的守护线程(简介、作用及代码实例)
    转载:(14条消息)python的守护线程(简介、作用及代码实例)_python守护线程的作用_HXH.py的博客-CSDN博客python守护线程简介守护线程的理解:如果当前python线程是守护线程,那么意味着这个线程是“不重要”的,“不重要”意味着如果他的主进程结束了但该守护线程没有运行完,守护进程就会被......
  • 机器学习数据顺序随机打乱:Python实现
      本文介绍基于Python语言,实现机器学习、深度学习等模型训练时,数据集打乱的具体操作。1为什么要打乱数据集  在机器学习中,如果不进行数据集的打乱,则可能导致模型在训练过程中出现具有“偏见”的情况,降低其泛化能力,从而降低训练精度。例如,如果我们做深度学习的分类,其中初始......
  • python 办公常用一:从文本文件中提取手机号码
    python办公常用一、从文本文件中提取手机号码给定一个文本文件从中提取所有手机号码importredefmain():withopen(path,encoding="utf-8")asf:data=f.read()res=re.findall(r'(?:13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-3......