Python数据分析从入门到进阶:快速处理文本(含代码)

🍁1. 清洗文本

对一些非结构化的文本数据进行基本的清洗

  • strip
  • split
  • replace
python 复制代码
# 创建文本
text_data = ['   Interrobang. By Aishwarya Henriette   ',
             'Parking And goding. by karl fautier',
             '   Today is the night. by jarek prakash    ']
python 复制代码
# 去除文本两端的空格
stripwhitespace = [string.strip() for string in text_data]
python 复制代码
stripwhitespace
css 复制代码
['Interrobang. By Aishwarya Henriette', 'Parking And goding. by karl fautier', 'Today is the night. by jarek prakash']
python 复制代码
# 删除句号
remove_periods = [string.replace('.','') for string in text_data]
python 复制代码
remove_periods
css 复制代码
['   Interrobang By Aishwarya Henriette   ', 'Parking And goding by karl fautier', '   Today is the night by jarek prakash    ']
python 复制代码
# 创建函数
def capitalizer(string):
    return string.upper()
python 复制代码
[capitalizer(string) for string in remove_periods]
css 复制代码
['   INTERROBANG BY AISHWARYA HENRIETTE   ', 'PARKING AND GODING BY KARL FAUTIER', '   TODAY IS THE NIGHT BY JAREK PRAKASH    ']
python 复制代码
# 使用正则表达式
import re
python 复制代码
def replace_letters_with_x(string):
    return re.sub(r'[a-zA-Z]','x',string)
python 复制代码
[replace_letters_with_x(string) for string in remove_periods]
css 复制代码
['   xxxxxxxxxxx xx xxxxxxxxx xxxxxxxxx   ', 'xxxxxxx xxx xxxxxx xx xxxx xxxxxxx', '   xxxxx xx xxx xxxxx xx xxxxx xxxxxxx    ']

🍂2. 解析并清洗HTML

python 复制代码
#使用beautiful soup 对html进行解析
python 复制代码
from bs4 import BeautifulSoup
python 复制代码
# 创建html代码
html = """
        <div class='full_name'><span style='font-weight:bold'>
        Masege Azra"
    
    """
python 复制代码
# 创建soup对象
soup = BeautifulSoup(html, 'lxml')
python 复制代码
soup.find('div')
xml 复制代码
<div class="full_name"><span style="font-weight:bold">
        Masege Azra"
    
    </span></div>

🍃3. 移除标点

python 复制代码
import unicodedata
import sys
python 复制代码
text_data = ['Hi!!!! I. love. This. Song....',
             '10000% Agree!!!! #LoveIT',
             'Right??!!']
python 复制代码
# 创建一个标点符号字典
punctuation = dict.fromkeys(i for i in range(sys.maxunicode) if unicodedata.category(chr(i)).startswith('P'))
python 复制代码
[string.translate(punctuation) for string in text_data]
css 复制代码
['Hi I love This Song', '10000 Agree LoveIT', 'Right']

🌍4. 文本分词

这里介绍一下jieba库

python 复制代码
python 复制代码
import jieba
python 复制代码
# 创建文本
string = 'The science of study is the technology of tomorrow'
python 复制代码
seg = jieba.lcut(string)
print(seg)
css 复制代码
['The', ' ', 'science', ' ', 'of', ' ', 'study', ' ', 'is', ' ', 'the', ' ', 'technology', ' ', 'of', ' ', 'tomorrow']

当然,本文只是介绍了在数据清洗中的一些最基本的文本处理方法,后续还会介绍目前NLP的一些主流方法和代码。

相关推荐
关山19 分钟前
MCP实战
python·ai编程·mcp
悠哉悠哉愿意35 分钟前
【Python语法基础学习笔记】if语句
笔记·python·学习
Q_Q196328847543 分钟前
python的电影院座位管理可视化数据分析系统
开发语言·spring boot·python·django·flask·node.js·php
BYSJMG1 小时前
计算机大数据毕业设计推荐:基于Hadoop+Spark的食物口味差异分析可视化系统【源码+文档+调试】
大数据·hadoop·分布式·python·spark·django·课程设计
杜子不疼.1 小时前
《Python学习之第三方库:开启无限可能》
开发语言·python·学习
青衫客362 小时前
用 Python 实现一个“小型 ReAct 智能体”:思维链 + 工具调用 + 环境交互
python·大模型·llm·react
AI视觉网奇2 小时前
音频分类模型笔记
人工智能·python·深度学习
Ratten3 小时前
【Python 实战】---- 实现一个可选择、配置操作的批量文件上传工具(四)配置管理界面和逻辑实现
python
Ratten4 小时前
【Python 实战】---- 实现一个可选择、配置操作的批量文件上传工具(五)打包成 exe 应用
python
跟橙姐学代码4 小时前
写 Python 函数别再死抠参数了,这招让代码瞬间灵活
前端·python