pandas.str.endswith()攻略
pandas.str.endswith()
是Pandas库中的一个用于字符串操作的函数,它用于测试Series或Index(或它们的子类)内每个字符串是否以指定的字符串结尾。
该函数的语法如下:
Series.str.endswith(pat, na=None)
其中pat
为字符串或可作为字符串的列表或元祖,代表我们要查找的结尾。如果我们要查找多个结尾,可以将这些结尾组成一个列表传入该函数。na
为可选项,用于表示传入的字符串中的空值。
接下来,我们将提供两个使用pandas.str.endswith()
函数的实例。
实例1:使用pandas.str.endswith()获取不同文件类型的文件名
假设我们有一组文件名,我们想要把不同类型的文件名分开。我们可以使用pandas.str.endswith()
函数,传入一个包含不同文件类型的元组,以此获取这些文件的文件名。
import pandas as pd
file_names = pd.Series(['music.mp3', 'video.mp4', 'document.docx', 'spreadsheet.xlsx'])
# 分别获取不同类型的文件名
music_files = file_names[file_names.str.endswith('.mp3')]
video_files = file_names[file_names.str.endswith('.mp4')]
document_files = file_names[file_names.str.endswith('.docx')]
spreadsheet_files = file_names[file_names.str.endswith('.xlsx')]
print('music_files:', music_files.tolist())
print('video_files:', video_files.tolist())
print('document_files:', document_files.tolist())
print('spreadsheet_files:', spreadsheet_files.tolist())
输出结果为:
music_files: ['music.mp3']
video_files: ['video.mp4']
document_files: ['document.docx']
spreadsheet_files: ['spreadsheet.xlsx']
实例2:使用pandas.str.endswith()清洗数据
我们可以使用pandas.str.endswith()
函数进行数据清洗。比如,我们想要获取许多电话号码中以’888’结尾的号码:
import pandas as pd
phone_numbers = pd.Series(['123-456-8888', '456-789-1234', '555-777-8888', '999-888-1234'])
# 获取以'888'结尾的电话号码
result = phone_numbers[phone_numbers.str.endswith('888')]
print(result.tolist())
输出结果为:
['123-456-8888', '555-777-8888']
总结
pandas.str.endswith()
函数用于测试Series或Index(或它们的子类)内每个字符串是否以指定的字符串结尾,可以快速地获取指定结尾的字符串,以及进行数据清洗。