|
目录一、用法精讲331、pandas.Series.str.repeat方法331-1、语法331-2、参数331-3、功能331-4、返回值331-5、说明331-6、用法331-6-1、数据准备331-6-2、代码示例331-6-3、结果输出332、pandas.Series.str.replace方法332-1、语法332-2、参数332-3、功能332-4、返回值332-5、说明332-6、用法332-6-1、数据准备332-6-2、代码示例332-6-3、结果输出333、pandas.Series.str.rfind方法333-1、语法333-2、参数333-3、功能333-4、返回值333-5、说明333-6、用法333-6-1、数据准备333-6-2、代码示例333-6-3、结果输出334、pandas.Series.str.rindex方法334-1、语法334-2、参数334-3、功能334-4、返回值334-5、说明334-6、用法334-6-1、数据准备334-6-2、代码示例334-6-3、结果输出335、pandas.Series.str.rjust方法335-1、语法335-2、参数335-3、功能335-4、返回值335-5、说明335-6、用法335-6-1、数据准备335-6-2、代码示例335-6-3、结果输出 二、推荐阅读1、Python筑基之旅2、Python函数之旅3、Python算法之旅4、Python魔法之旅5、博客个人主页一、用法精讲331、pandas.Series.str.repeat方法331-1、语法#331、pandas.Series.str.repeat方法pandas.Series.str.repeat(repeats)DuplicateeachstringintheSeriesorIndex.Parameters:repeatsintorsequenceofintSamevalueforall(int)ordifferentvalueper(sequence).Returns:Seriesorpandas.IndexSeriesorIndexofrepeatedstringobjectsspecifiedbyinputparameterrepeats.331-2、参数331-2-1、repeat(必须):指定每个字符串要重复的次数,如果是单个整数值,则所有字符串都重复相同的次数;如果是pandas.Series或等长列表/数组,则每个字符串按照对应的位置值进行重复。331-3、功能 按照指定的次数重复每个字符串,这在生成大量重复数据或对某些特定字符串进行倍数扩展时非常有用。331-4、返回值 返回一个新的Series,其中每个字符串都已经按照指定次数进行了重复,新的Series的索引与原Series保持一致。331-5、说明 无331-6、用法331-6-1、数据准备无331-6-2、代码示例#331、pandas.Series.str.repeat方法importpandasaspd#示例数据data=pd.Series(['abc','def','ghi'])#使用'repeat'方法,所有字符串重复3次repeated_all=data.str.repeat(3)#使用'repeat'方法,根据每个元素指定不同的重复次数repeats=pd.Series([1,2,3])repeated_individual=data.str.repeat(repeats)print("OriginalSeries:\n",data)print("Serieswithallelementsrepeated3times:\n",repeated_all)print("Serieswithindividualrepeatcounts:\n",repeated_individual)331-6-3、结果输出#331、pandas.Series.str.repeat方法#OriginalSeries:#0abc#1def#2ghi#dtypebject#Serieswithallelementsrepeated3times:#0abcabcabc#1defdefdef#2ghighighi#dtypebject#Serieswithindividualrepeatcounts:#0abc#1defdef#2ghighighi#dtypebject332、pandas.Series.str.replace方法332-1、语法#332、pandas.Series.str.replace方法pandas.Series.str.replace(pat,repl,n=-1,case=None,flags=0,regex=False)Replaceeachoccurrenceofpattern/regexintheSeries/Index.Equivalenttostr.replace()orre.sub(),dependingontheregexvalue.Parameters:patstrorcompiledregexStringcanbeacharactersequenceorregularexpression.replstrorcallableReplacementstringoracallable.Thecallableispassedtheregexmatchobjectandmustreturnareplacementstringtobeused.Seere.sub().nint,default-1(all)Numberofreplacementstomakefromstart.casebool,defaultNoneDeterminesifreplaceiscasesensitive:IfTrue,casesensitive(thedefaultifpatisastring)SettoFalseforcaseinsensitiveCannotbesetifpatisacompiledregex.flagsint,default0(noflags)Regexmoduleflags,e.g.re.IGNORECASE.Cannotbesetifpatisacompiledregex.regexbool,defaultFalseDeterminesifthepassed-inpatternisaregularexpression:IfTrue,assumesthepassed-inpatternisaregularexpression.IfFalse,treatsthepatternasaliteralstringCannotbesettoFalseifpatisacompiledregexorreplisacallable.Returns:SeriesorIndexofobjectAcopyoftheobjectwithallmatchingoccurrencesofpatreplacedbyrepl.Raises:ValueErrorifregexisFalseandreplisacallableorpatisacompiledregexifpatisacompiledregexandcaseorflagsissetNotesWhenpatisacompiledregex,allflagsshouldbeincludedinthecompiledregex.Useofcase,flags,orregex=Falsewithacompiledregexwillraiseanerror.332-2、参数332-2-1、pat(必须):字符串或正则表达式,表示要替换的模式。如果regex=True,则pat是正则表达式;否则pat被视为普通字符串。332-2-2、repl(必须):用于替换pat的内容,如果是字符串,则直接替换为该字符串;如果是一个函数(callable),则它会被每个匹配的元素调用,返回值作为替换的内容。332-2-3、n(可选,默认值为-1):整数,指定要替换的最大次数,默认为-1,表示替换所有匹配的内容;如果设定为一个正整数,则只替换指定次数。332-2-4、case(可选,默认值为None):布尔值,如果为True,替换过程区分大小写;如果为False,则不区分大小写;默认为None,这时的行为取决于是否使用正则表达式。332-2-5、flags(可选,默认值为0):整数,正则表达式的标志(flags),可以用来控制匹配行为,如re.IGNORECASE等。332-2-6、regex(可选,默认值为False):布尔值,指定pat是否被解释为正则表达式,如果为False,则pat被视为普通字符串。332-3、功能 查找并替换字符串中的特定模式,它可以用于简单的字符串替换,也可以结合正则表达式实现复杂的模式替换。在数据清洗时,常用于纠正数据中的错误、去除不必要的字符或进行格式化。332-4、返回值 返回一个新的Series,其中的字符串已经按照指定的模式进行了替换,新Series的索引与原Series保持一致。332-5、说明 无332-6、用法332-6-1、数据准备无332-6-2、代码示例#332、pandas.Series.str.replace方法importpandasaspd#示例数据data=pd.Series(['abc_def','123_456','ghi_jkl'])#使用'replace'方法,简单字符串替换replaced_simple=data.str.replace('_','-')#使用'replace'方法,正则表达式替换(将数字替换为字母X)replaced_regex=data.str.replace(r'\d','X',regex=True)print("OriginalSeries:\n",data)print("Serieswithsimplereplacement:\n",replaced_simple)print("Serieswithregexreplacement:\n",replaced_regex)332-6-3、结果输出#332、pandas.Series.str.replace方法#OriginalSeries:#0abc_def#1123_456#2ghi_jkl#dtypebject#Serieswithsimplereplacement:#0abc-def#1123-456#2ghi-jkl#dtypebject#Serieswithregexreplacement:#0abc_def#1XXX_XXX#2ghi_jkl#dtypebject333、pandas.Series.str.rfind方法333-1、语法#333、pandas.Series.str.rfind方法pandas.Series.str.rfind(sub,start=0,end=None)ReturnhighestindexesineachstringsintheSeries/Index.Eachofreturnedindexescorrespondstothepositionwherethesubstringisfullycontainedbetween[start:end].Return-1onfailure.Equivalenttostandardstr.rfind().Parameters:substrSubstringbeingsearched.startintLeftedgeindex.endintRightedgeindex.Returns:SeriesorIndexofint.333-2、参数333-2-1、sub(必须):字符串,表示要查找的子字符串。333-2-2、start(可选,默认值为0):整数,指定从字符串的哪个位置开始查找,默认值为0,即从字符串的开头开始查找。333-2-3、end(可选,默认值为None):整数,指定查找到字符串的哪个位置结束,默认值为None,表示查找到字符串的末尾。333-3、功能 查找指定子字符串在字符串中最后一次出现的位置,并返回其起始索引,如果子字符串未找到,则返回-1,该方法对于需要定位字符串中某一特定部分的位置,并从后往前搜索的场景非常有用。333-4、返回值 返回一个Series,其中每个元素对应原Series中字符串的子字符串最后一次出现的位置,如果子字符串不存在于某个元素中,则对应的返回值为-1。333-5、说明 无333-6、用法333-6-1、数据准备无333-6-2、代码示例#333、pandas.Series.str.rfind方法importpandasaspd#示例数据data=pd.Series(['abcdef','abcabc','helloworld'])#使用'rfind'方法查找子字符串index_ef=data.str.rfind('ef')index_ab=data.str.rfind('ab')index_l=data.str.rfind('l')print("OriginalSeries:\n",data)print("Positionof'ef':\n",index_ef)print("Positionof'ab':\n",index_ab)print("Positionof'l':\n",index_l)333-6-3、结果输出#333、pandas.Series.str.rfind方法#OriginalSeries:#0abcdef#1abcabc#2helloworld#dtypebject#Positionof'ef':#04#1-1#2-1#dtype:int64#Positionof'ab':#00#13#2-1#dtype:int64#Positionof'l':#0-1#1-1#29#dtype:int64334、pandas.Series.str.rindex方法334-1、语法#334、pandas.Series.str.rindex方法pandas.Series.str.rindex(sub,start=0,end=None)ReturnhighestindexesineachstringinSeries/Index.Eachofthereturnedindexescorrespondstothepositionwherethesubstringisfullycontainedbetween[start:end].Thisisthesameasstr.rfindexceptinsteadofreturning-1,itraisesaValueErrorwhenthesubstringisnotfound.Equivalenttostandardstr.rindex.Parameters:substrSubstringbeingsearched.startintLeftedgeindex.endintRightedgeindex.Returns:SeriesorIndexofobject.334-2、参数334-2-1、sub(必须):字符串,表示要查找的子字符串。334-2-2、start(可选,默认值为0):整数,指定从字符串的哪个位置开始查找,默认值为0,即从字符串的开头开始查找。334-2-3、end(可选,默认值为None):整数,指定查找到字符串的哪个位置结束,默认值为None,表示查找到字符串的末尾。334-3、功能 查找指定子字符串在字符串中最后一次出现的位置,并返回其起始索引,与rfind()不同的是,如果子字符串未找到,rindex()会抛出ValueError而不是返回-1。334-4、返回值 返回一个Series,其中每个元素对应原Series中字符串的子字符串最后一次出现的位置,如果子字符串不存在,则抛出ValueError。334-5、说明 无334-6、用法334-6-1、数据准备无334-6-2、代码示例#334、pandas.Series.str.rindex方法importpandasaspdser=pd.Series(["Deer","eagle","Sheep"])data=ser.str.rindex("e")print(data)334-6-3、结果输出#334、pandas.Series.str.rindex方法#02#14#23#dtype:int64335、pandas.Series.str.rjust方法335-1、语法#335、pandas.Series.str.rjust方法pandas.Series.str.rjust(width,fillchar='')PadleftsideofstringsintheSeries/Index.Equivalenttostr.rjust().Parameters:widthintMinimumwidthofresultingstring;additionalcharacterswillbefilledwithfillchar.fillcharstrAdditionalcharacterforfilling,defaultiswhitespace.Returns:Series/Indexofobjects.335-2、参数335-2-1、width(必须):整数,指定字符串对齐后的总宽度,如果字符串的长度小于width,那么字符串会被填充字符以达到这个宽度;如果字符串的长度已经大于或等于width,则原字符串保持不变,不会进行截断或修改。335-2-2、fillchar(可选,默认值为''):字符串,表示用于填充字符串左侧的字符,该参数只能接受一个字符,如果提供的fillchar是多个字符,会抛出TypeError。335-3、功能 用于将字符串向右对齐并使其达到指定的宽度,如果字符串本身的长度小于width,则在左侧填充指定的字符fillchar,使字符串的总长度达到width;如果字符串的长度已经大于或等于width,则返回原字符串。335-4、返回值 返回一个与原Series长度相同的新的Series对象,且其中的每个元素都是经过右对齐处理后的字符串。335-5、说明 无335-6、用法335-6-1、数据准备无335-6-2、代码示例#335、pandas.Series.str.rjust方法importpandasaspd#示例数据data=pd.Series(['apple','banana','cherry'])#将字符串右对齐,宽度为10,左侧填充'-'result=data.str.rjust(10,'-')print(result)335-6-3、结果输出#335、pandas.Series.str.rjust方法#0-----apple#1----banana#2----cherry#dtypebject二、推荐阅读1、Python筑基之旅2、Python函数之旅3、Python算法之旅4、Python魔法之旅5、博客个人主页
|
|