一、str對象介紹和基本操作
在Pandas中,字符串數據可以用str對象來進行操作。
str對象提供了許多字符串方法,下面是一些常用操作:
import pandas as pd
import numpy as np
s = pd.Series(['A','B','C','AA','BB','CC'])
s.str.lower() #將字符串轉為小寫
s.str.upper() #將字符串轉為大寫
s.str.len() #返回字符串長度
s.str.strip() #去掉兩邊空格
s.str.split('A') #用'A'進行字符串分割
上面的代碼會分別得到以下結果:
0 a
1 b
2 c
3 aa
4 bb
5 cc
dtype: object
0 A
1 B
2 C
3 AA
4 BB
5 CC
dtype: object
0 1
1 1
2 1
3 2
4 2
5 2
dtype: int64
0 A
1 B
2 C
3 AA
4 BB
5 CC
dtype: object
0 [, ]
1 [, ]
2 [, ]
3 [AA, , ]
4 [BB, , ]
5 [CC, , ]
dtype: object
二、字符串提取
在實際的數據處理中,常常需要從一個字符串中提取出一部分內容。
1. 使用str.slice提取子串
如果想要提取字符串中的某一個子串(如提取前幾個字符),可以使用str.slice方法。
import pandas as pd
import numpy as np
s = pd.Series(['abcd','efgh','ijkl'])
s.str.slice(0,2) #提取每個字符串的前2個字符
s.str.slice(1,3) #提取每個字符串的第2~3個字符
上面的代碼會得到以下結果:
0 ab
1 ef
2 ij
dtype: object
0 bc
1 fg
2 jk
dtype: object
2. 使用str.extract提取規則匹配的子串
如果需要提取一個字符串中符合某種規則的子串,可以使用str.extract方法,並給出一個正則表達式。
import pandas as pd
import numpy as np
s = pd.Series(['A1','B2','C3'])
s.str.extract('([AB])(\d)') #提取以A或B開頭,後跟一個數字的子串
上面的代碼會得到以下結果:
0 1
0 A 1
1 B 2
三、字符串拼接
在實際開發過程中,經常需要將多個字符串進行合併。
1. 使用”+”號進行拼接
使用”+”號把多個字符串拼接起來是最簡便的方法,可以用以下代碼實現:
import pandas as pd
import numpy as np
s1 = pd.Series(['A','B','C'])
s2 = pd.Series(['D','E','F'])
s3 = s1 + s2
print(s3)
上面的代碼會得到以下結果:
0 AD
1 BE
2 CF
dtype: object
2. 使用str.cat方法進行拼接
除了用”+”號拼接以外,還可以使用str.cat方法進行拼接,可以使用以下代碼實現:
import pandas as pd
import numpy as np
s1 = pd.Series(['A','B','C'])
s2 = pd.Series(['D','E','F'])
s3 = s1.str.cat(s2)
print(s3)
上面的代碼會得到以下結果:
0 AD
1 BE
2 CF
dtype: object
四、字符串分割
在實際開發中,經常需要對包含多個字段的字符串進行拆分。
1. 使用str.split方法進行分割
使用str.split方法進行分割是最直接的方法,可以使用以下代碼實現:
import pandas as pd
import numpy as np
s = pd.Series(['A,B,C','D,E,F','G,H,I'])
s.str.split(',', expand=True) #以逗號作為分隔符,將每個字符串拆分成3個部分
上面的代碼會得到以下結果:
0 1 2
0 A B C
1 D E F
2 G H I
2. 使用str.extract方法提取分隔符中間的內容
如果需要提取分隔符中間的內容,可以使用str.extract方法,可以使用以下代碼實現:
import pandas as pd
import numpy as np
s = pd.Series(['A_B_C','D_E_F','G_H_I'])
s.str.extract('_(.*)_') #提取每個字符串中以_開頭和結尾的內容
上面的代碼會得到以下結果:
0
0 B
1 E
2 H
總結:
通過本文的介紹,我們了解了Pandas中字符串「提取、拼接和分隔」的技巧,提高了數據處理效率。在實際數據處理過程中,我們可以根據具體情況選擇適合的方法,以提高代碼的可靠性和可維護性。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/246721.html