首页 > 编程语言 >python pandas文本替换

python pandas文本替换

时间:2024-01-28 09:03:30浏览次数:28  
标签:python dtype object 替换 replace 内容 str 文本 pandas

文本替换
在进行数据处理时我们可以使用替换功能剔除我们不想要的内容,换成想要的内容。这在数据处理中经常使用,因为经过人工整理的数据往往不理想,需要进行替换操作。我们使用.str.replace()方法来完成这一
操作。例如,对于以下一些金额数据,我们想去除货币符号,为后续转换为数字类型做准备,因为非数字元素的字符无法转换为数字类型:
# 带有货币符的数据
s = pd.Series(['10', '-¥20', '¥3,000'], dtype="string")
# 将人民币符号替换为空
s.str.replace('¥', '')
'''
0 10
1 -20
2 3,000
dtype: string
'''
# 如果需要数字类型,还需要将逗号剔除
s.str.replace(r'¥|,','')
'''
0 10
1 -20
2 3000
dtype: string
'''
注意,.str.replace()方法的两个基本参数中,第一个是旧内容(希望被替换的已有内容),第二个是新内容(替换成的新内容)。替换字符默认是支持正则表达式的,如果被替换内容是一个正则表达式,可以使
用regex=False关闭对正则表达式的支持。在被替换字符位还可以传入一个定义好的函数或者直接使用lambda。另外,替换工作也可以使用df.replace()和s.replace()完成。
11.3.6 指定替换
str.slice_replace()可实现保留选定内容,替换剩余内容:
# 构造数据
s = pd.Series(['ax', 'bxy', 'cxyz'])
# 保留第一个字符,其他的替换或者追加T
s.str.slice_replace(1, repl='T')
'''
0 aT
1 bT
2 cT
dtype: object
'''
# 指定位置前删除并用T替换
s.str.slice_replace(stop=2, repl='T')
'''
0 T
1 Ty
2 Tyz
dtype: object
'''
# 指定区间的内容被替换
s.str.slice_replace(start=1, stop=3, repl='T')
'''
0 aT
1 bTy
2 cTyz
dtype: object
'''
11.3.7 重复替换
可以使用.str.repeat()方法让原有文本内容重复:
# 将整体重复两次
pd.Series(['a', 'b', 'c']).repeat(repeats=2)
'''
0 a
0 a
1 b
1 b
2 c
2 c
dtype: object
'''
# 将每一行的内容重复两次
pd.Series(['a', 'b', 'c']).str.repeat(repeats=2)
'''
0 aa
1 bb
2 cc
dtype: object
'''
# 指定每行重复几次
pd.Series(['a', 'b', 'c']).str.repeat(repeats=[1, 2, 3])
'''
0 a
1 bb
2 ccc
dtype: object

 

标签:python,dtype,object,替换,replace,内容,str,文本,pandas
From: https://www.cnblogs.com/xkdn/p/17992474

相关文章

  • python pandas文本连接
    文本连接方法s.str.cat()具有文本连接的功能,可以将序列连接成一个文本或者将两个文本序列连接在一起。#文本序列s=pd.Series(['x','y','z'],dtype="string")#默认无符号连接s.str.cat()#'xyz'#用逗号连接s.str.cat(sep=',')#'x,y,z'如果序列中有空值......
  • PYTHON用时变马尔可夫区制转换(MARKOV REGIME SWITCHING)自回归模型分析经济时间序列|附
    全文下载链接:http://tecdat.cn/?p=22617最近我们被客户要求撰写关于MRS的研究报告,包括一些图形和统计输出。本文提供了一个在统计模型中使用马可夫转换模型模型的例子,来复现Kim和Nelson(1999)中提出的一些结果。它应用了Hamilton(1989)的滤波器和Kim(1994)的平滑器  %matplot......
  • python语言理解
    类python是一门面向对象的语言,强调的是对象,当我们创建一个类时,必然要给这个类赋予对应的属性去描述它,例如一个动物的类,那么这个类应该有动物种类,颜色,年龄,体重,习性等属性,代码如下:classAnimal:def__init__(self,species,color,age,weight,habitat):self.spec......
  • Python 潮流周刊第 37 期(摘要)
    本周刊由Python猫出品,精心筛选国内外的250+信息源,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等内容。愿景:帮助所有读者精进Python技术,并增长职业和副业的收入。周刊全文:https://pythoncat.top/posts/2024-01-27-weekly以下是本期摘要:......
  • 3_python第三方库
    ❓查看安装了哪些第三方库终端piplist❓更新第三方库版本pipinstall--upgrade第三方库名ERROR:pip'sdependencyresolverdoesnotcurrentlytakeintoaccountallthepackagesthatareinstalled.Thisbehaviouristhesourceofthefollowingdependencycon......
  • Python获取内存、CPU利用率,CPU温度
    最近一个项目的需求,在软件上加入硬件实时信息,大概搜索一下,没太好的结果,所以决定自己写一篇我的代码不难发现,都使用了psutil包,为什么呢,别的包我没太关注,纯粹是这台机的环境上有这个包如果大家没有这个包,使用pip工具安装一下即可,目前我还没发现兼容性问题python获取内存利用率......
  • 文本分类识别Python+卷积神经网络算法+TensorFlow模型训练+Django可视化界面
    一、介绍文本分类系统,使用Python作为主要开发语言,通过选取的中文文本数据集("体育类","财经类","房产类","家居类","教育类","科技类","时尚类","时政类","游戏类","娱乐类"),基于TensorFlow搭建CNN卷积神经网络算法模型,并进行多轮迭代训练最后得到一个识......
  • SciTech-EE-Virtual Electronics Lab: How to Create an Oscilloscope Using Python a
    https://wiki.analog.com/university/tools/m2kVirtualElectronicsLab:HowtoCreateanOscilloscopeUsingPythonandADALM2000byArnieMaeBaesandChristianGarciaDownloadPDFAbstractAvirtualelectronicslaboratoryisacollectionofsoftware-based......
  • 1、【实操】使用python脚本自动检测域名信息是否准确
    背景:因为信息安全的原因,内外网表格数据等信息不能互传,因而内外网信息表同步频率比较低,导致部分信息存在偏差。比如域名、公网地址、内网地址等在更改后,信息没有及时同步,或者更新信息的人因为手工上传导致错误,没有及时发现,倒置后期排查问题时不能及时拿到准确信息,需要沿......
  • python 多线程运行 串行或并行
    我们知道在python中运行多线程程序很简单,只需要几步,创建线程,start线程即可,下面简单说下多线程的串行或者并行的使用示例:#-*-coding:utf-8-*-#@Time:2024-01-2714:03importthreadingimporttimedefrun(name:str)->None:time.sleep(3)print("Thre......