字符串操作|学习笔记

简介: 快速学习字符串操作

开发者学堂课程【Python 常用数据科学库:字符串操作】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/546/detail/7492


字符串操作

内容介绍

一、大小写转换

二、计算字符串长度

三、去空格操作

四、数据替代

五、数据切分


一、大小写转换

1、关于 pandas 怎样处理字符串,这相对来说都是稍微简单的一些操作。首先把panda 导进来,构造一个 Serie s结构, 在 Series 结构中,指定一些字符串,A b B然后还有一些

字符值 gear AGER ,还可以指定 np.nan 值

import pandas as pd

import numpy as

s = pd.Series(['A‘,’b’,’B' ,’gaer’, AGER",np.nan])

s

执行一下,这就是当前的一个 series 串,

image.png

2、对于当前这个串来说,如果想对里面的数据进行操作,就在 series 当中把 str 调进来,str 里有一个 lower,可以进行大小写转换,s.str.lower(),转换完的结果所有大写字母都变成了小写字母,这是最基本一点,先可以进行字符串的转换,然后可以转换小写,如果转换大写把 lower 转换成 upper 就可以了。


二、计算字符串长度

1、统计每个串分别有多长,算它的len值,也可以当成是一个特征,s. str. len() 相当于计算了一下当前串的长度是多大的。


三、去空格操作

1、定位了 index 的索引, index 里传进来一堆数据,tang、yu、di

index = pd.Index ([‘  tang’,’   yu   ‘,’di’])

index

这就是当前的 index 值

2、然后打印一下 Index([‘  tang’,’   yu   ‘,’di’], dtype=’object’) 中间带一个空格,如果要把空格去掉,把 str 调进来,然后去调 strip,Index.str.strip  执行一下就没有空格了。不光可以全去掉,也可以只去掉左边的空格,代码是Index.str.ltrip  ,只去掉右面的代码是  Index.str.rstrip。去左去右或者全去掉都是可以的,主要是看自己的需求。


四、数据替代

1、构造一个 df,然后构造一个 Data Frame,在 Data Frame 当中写上当前的一个数据。比如说随便传进来一个三行二列的数,然后指定一个列名 A,B,再写一个索引index,需要三个数,直接写数字3

df = pd. DataFrame(np.random.randn(3.2), columns = ['A’,'B'].index = range(3))

Df

执行一下

image.png

这就是当前的 Data Frame 值。

2、如果要去改变一些值,比如说在索引里多加两个字母 ab,原来的索引就变成了 A a  B  b,这个列名看起来比较奇怪,要把列名改一下,把 Data Frame 调进来,可以把列名换一下,换一下列名就叫字符串操作,字符串当中可以执行的是 replace 的操作,replace 里面把空格给它换成一个下杠

df.columns =df.columns.str.replace(’ ‘ , ‘_’)

执行这样一个操作,原来是A a  B b,现在就变成 A_a  B_b,这个就是说可以执行一些操作,执行完之后,结果也会发生一些变化,可以进行值的替代。


五、数据切分

1、不只有替代,还得有切分,s 等于 pandas 点 Series,里面随便传进来一些值,第一个是 a_ b_C,第二个值是 c_d_e,di第三个值 f_g_ h,执行这是一个 Series 结构,接下来可以调 s 在 str 当中的操作,这个操作就是 split, s.str.spilt(_) 可以把它进行一个切分,比如说原来的数据_表示这两个字段连在一起了,现在要把两个字段给分开,切分完变成一个像 list 的结构。

2、之前是这么定义的 a_ b_C 中 a 是一个字段,b 是一个字段,C 又是一个字段,切完之后希望得到的是一个新的字段,

在 s.str.spilt(‘_’) 里面加进来一个参数,就是以什么为分割,然后加上 expand 扩充一下,让它等于一个 True 值,s.str.spilt(‘_’ , expand = True)

执行一下结果多了三个列,第一个数据 abc,第二个是 cde,第三个 fgh,也就是数据都切分开了。

3、切分的时候还可以加上一些限制,再加一个 n 值等于1,s.str.spilt(‘_’ , expand = True,n=1) 相对来说就是这里面 a 它是一个 bc 连在一起了,其他两列也是一样的,相当于做了一个限制,n=2 是又会得另外一个结果,n=1 相当于是只能切分一次,后面是一个整体,n=2 相当于相当于是切分了两次。

4、在这个字符串当中,还可以进行一个包含的判断。比如说 s 等于 pandas 点Series,里面的数据还是随便写几个

s = pd.Series(['A’,‘Aas’,‘Afgew', ’Ager‘,’ Agre','Ager'])

s

s 长这个样子

image.png

接下来可以用 s 点 str,然后去进行一个判断,看它是不是包含当前的某一个元素,比如说看它是不是包含 Aas,     s.str.contains(‘Aas’) 一回车就能得到结果 ,第一个元素没有第二个元素有,第三个元素没有,第四个元素没有。直接写个 A,结果都是 True,因为它里面都包含 A,写 Ag 会出现好几个 True,相当于是可以执行这样一个判断,判断完之后它就会给返回,当前在这个 series 当中,它判断一下里面是不是有这样包含的操作。

5、构造一个 Series,在这个 Series 中构造一些特别的,a,a|b,a|c,这是当前这个数据,有几个值被下杠分开了。要把这个东西切分开看一看,一共有多少个可能性。这个时候调 s 的串结构,它里面有 get_dummies,dummies 之后还可以单独来拿出来说一说,这个东西还是比较有用的,在 dummies 里面指定一个分割符,分割符是参数,

s.str. get_dummies(sep =’|’) 执行一下,这样 abc 就被切分出来了,可以通过 get_dummies 把值拿出来,这个就是 pandas 当中对于字符串的一些操作,对于字符串操作还是有蛮多的,感兴趣的话可以去看一下。

相关文章
|
5月前
字符串\字符串处理常用函数
字符串\字符串处理常用函数
34 2
字符串操作详解
字符串操作详解
|
6月前
|
C++
c++字符串操作
c++字符串操作
60 0
|
C++ 容器
C++ 字符串操作
文章目录 1.1 C++ 字符串操作 2.2字符数组的常用操作 2.3遍历字符数组的字符 3.标准库类型string 3.1 定义和初始化 3.2 string的操作 1)读写操作 2)使用`getline`读取一整行 3)string的方法操作 4)字符串和string相加 3.3处理string对象中的字符
|
Python
Python编程:字符串处理
Python编程:字符串处理
107 0
Python编程:字符串处理
|
存储 编译器
字符串操作函数详解
字符串操作函数详解
字符串操作函数详解
字符串处理方法
字符串处理方法
111 0
字符串处理方法