首先让我们来讲解一下Pandas对文本类型数据的处理小结。
1. 读取文本类型数据(CSV、TXT、Excel)
使用Pandas读取文本类型数据可以使用read_csv()
、read_table()
、read_excel()
等函数,其中,read_csv()
用于读取CSV格式数据,read_table()
用于读取TXT格式数据,read_excel()
用于读取Excel格式数据。
import pandas as pd
# 读取CSV格式数据
df = pd.read_csv('file.csv')
# 读取TXT格式数据
df = pd.read_table('file.txt')
# 读取Excel格式数据
df = pd.read_excel('file.xlsx')
2. 字符串方法
Pandas提供了一些字符串方法用于处理文本类型数据,例如,可以使用str.upper()
将文本全部转换成大写,使用str.lower()
将文本全部转换成小写,使用str.replace()
替换文本中的某些字符等。
# 将文本全部转换成大写
df['column_name'].str.upper()
# 将文本全部转换成小写
df['column_name'].str.lower()
# 替换文本
df['column_name'].str.replace('a', 'b')
3. 分割和拼接
Pandas提供了一些函数用于对文本进行分割和拼接,例如,可以使用str.split()
将文本按照某个字符进行分割,使用str.cat()
将多个文本拼接起来。
# 将文本按照逗号进行分割
df['column_name'].str.split(',')
# 将多个文本拼接起来
df['column_name'].str.cat(sep='_')
4. 提取子字符串
Pandas提供了一些函数用于提取文本中的某些字符,例如,可以使用str.slice()
提取文本中的某一个子字符串,使用str.extract()
提取符合某个模式的子字符串。
# 提取文本中的第3个字符到第6个字符
df['column_name'].str.slice(2, 6)
# 提取符合某个模式的子字符串
df['column_name'].str.extract('(\d+)')
以上就是关于Pandas中对文本类型数据的处理小结的内容,希望对你有所帮助。
以下是两条示例说明:
示例1:统计某篇文章中每个单词出现的次数
with open('article.txt', 'r') as f:
content = f.read()
# 转换为小写
content = content.lower()
# 替换特殊字符
content = content.replace('.', ' ').replace(',', ' ').replace('\n', ' ')
# 分割成单词列表
words = content.split()
# 统计每个单词出现的次数
word_count = pd.Series(words).value_counts()
print(word_count)
示例2:提取某个URL中的域名
url = 'https://www.example.com/product/1234'
# 提取域名
domain = pd.Series(url).str.extract('://(.*?)/')[0][0]
print(domain)