亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

一文分享5個Python文本處理的高效操作

 更新時間:2025年07月17日 08:22:42   作者:Python_trys  
在數(shù)據(jù)科學(xué)和自然語言處理領(lǐng)域,文本分析是一項基礎(chǔ)而重要的技能,本文將介紹5個Python中高效處理文本的操作,希望對大家有一定的幫助

前言

在數(shù)據(jù)科學(xué)和自然語言處理領(lǐng)域,文本分析是一項基礎(chǔ)而重要的技能。Python憑借其豐富的庫生態(tài)系統(tǒng),成為文本分析的首選工具。本文將介紹5個Python中高效處理文本的操作,幫助您快速入門文本分析。

1. 文本清洗:去除無用字符

文本數(shù)據(jù)通常包含各種噪音,如HTML標(biāo)簽、特殊符號等,清洗是第一步。

import re

def clean_text(text):
    # 去除HTML標(biāo)簽
    text = re.sub(r'<[^>]+>', '', text)
    # 去除特殊字符和數(shù)字
    text = re.sub(r'[^a-zA-Z\s]', '', text)
    # 轉(zhuǎn)換為小寫
    text = text.lower()
    # 去除多余空格
    text = ' '.join(text.split())
    return text

sample_text = "<p>This is a sample text! 123</p>"
print(clean_text(sample_text))  # 輸出: this is a sample text

2. 分詞處理:NLTK與jieba庫

分詞是文本分析的基礎(chǔ),英文可以使用NLTK,中文推薦使用jieba。

# 英文分詞
import nltk
nltk.download('punkt')  # 第一次使用需要下載數(shù)據(jù)

from nltk.tokenize import word_tokenize
text = "Natural language processing is fascinating."
tokens = word_tokenize(text)
print(tokens)  # 輸出: ['Natural', 'language', 'processing', 'is', 'fascinating', '.']

# 中文分詞
import jieba
text_chinese = "自然語言處理非常有趣"
tokens_chinese = jieba.lcut(text_chinese)
print(tokens_chinese)  # 輸出: ['自然語言', '處理', '非常', '有趣']

3. 停用詞去除

停用詞對分析意義不大,去除它們可以提高效率。

from nltk.corpus import stopwords
nltk.download('stopwords')  # 第一次使用需要下載數(shù)據(jù)

stop_words = set(stopwords.words('english'))
filtered_tokens = [word for word in tokens if word.lower() not in stop_words]
print(filtered_tokens)  # 輸出: ['Natural', 'language', 'processing', 'fascinating', '.']

# 中文停用詞示例
stopwords_chinese = {"的", "是", "在", "非常"}
filtered_chinese = [word for word in tokens_chinese if word not in stopwords_chinese]
print(filtered_chinese)  # 輸出: ['自然語言', '處理', '有趣']

4. 詞頻統(tǒng)計與詞云生成

分析文本中的關(guān)鍵詞可以通過詞頻統(tǒng)計和可視化來實現(xiàn)。

from collections import Counter
from wordcloud import WordCloud
import matplotlib.pyplot as plt

# 詞頻統(tǒng)計
word_counts = Counter(filtered_tokens)
print(word_counts.most_common(3))  # 輸出: [('Natural', 1), ('language', 1), ('processing', 1)]

# 生成詞云
text_for_wordcloud = " ".join(filtered_tokens)
wordcloud = WordCloud(width=800, height=400).generate(text_for_wordcloud)

plt.figure(figsize=(10, 5))
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis("off")
plt.show()

5. 情感分析:TextBlob應(yīng)用

快速評估文本情感傾向可以使用TextBlob庫。

from textblob import TextBlob
nltk.download('averaged_perceptron_tagger')  # 第一次使用需要下載數(shù)據(jù)

feedback = "I love this product. It's amazing!"
analysis = TextBlob(feedback)
print(f"情感極性: {analysis.sentiment.polarity}")  # 范圍從-1到1
print(f"主觀性: {analysis.sentiment.subjectivity}")  # 范圍從0到1

# 中文情感分析示例(需要先翻譯或使用中文專用庫)
chinese_feedback = "這個產(chǎn)品太糟糕了,我非常失望"
# 實際應(yīng)用中應(yīng)使用SnowNLP等中文庫

進(jìn)階技巧:TF-IDF向量化

對于更高級的文本分析,可以將文本轉(zhuǎn)換為數(shù)值特征。

from sklearn.feature_extraction.text import TfidfVectorizer

documents = [
    "Python is a popular programming language",
    "Java is another programming language",
    "Python and Java are both object-oriented"
]

vectorizer = TfidfVectorizer()
X = vectorizer.fit_transform(documents)
print(vectorizer.get_feature_names_out())  # 輸出特征詞
print(X.shape)  # 文檔-詞矩陣形狀

結(jié)語

本文介紹了Python中5個實用的文本分析操作,從基礎(chǔ)清洗到情感分析。掌握這些技能后,您可以進(jìn)一步探索更復(fù)雜的NLP任務(wù),如文本分類、命名實體識別等。Python的文本分析生態(tài)系統(tǒng)非常豐富,值得深入學(xué)習(xí)。

到此這篇關(guān)于一文分享5個Python文本處理的高效操作的文章就介紹到這了,更多相關(guān)Python文本處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 通過python-turtle庫實現(xiàn)繪制圖畫

    通過python-turtle庫實現(xiàn)繪制圖畫

    turtle庫是python的基礎(chǔ)繪圖庫,經(jīng)常被用來給孩子們介紹編程知識的方法庫,是標(biāo)準(zhǔn)庫之一,利用turtle可以制作很多復(fù)雜的繪圖。本文將為大家介紹通過turtle庫繪制的一些有趣的圖畫,感興趣的小伙伴可以學(xué)習(xí)一下
    2021-12-12
  • 使用Pandas如何讀取多個分隔方式的文件

    使用Pandas如何讀取多個分隔方式的文件

    這篇文章主要介紹了使用Pandas如何讀取多個分隔方式的文件問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 通過conda把已有虛擬環(huán)境的python版本進(jìn)行降級操作指南

    通過conda把已有虛擬環(huán)境的python版本進(jìn)行降級操作指南

    當(dāng)使用conda創(chuàng)建虛擬環(huán)境時,有時候可能會遇到python版本不對的問題,下面這篇文章主要給大家介紹了關(guān)于如何通過conda把已有虛擬環(huán)境的python版本進(jìn)行降級操作的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • python 輸出一個兩行字符的變量

    python 輸出一個兩行字符的變量

    昨天被一個哥們問怎么用 python輸出一個兩行字符的變量。寫了N個方法都覺得麻煩。
    2009-02-02
  • Python接口測試之如何使用requests發(fā)起請求

    Python接口測試之如何使用requests發(fā)起請求

    這篇文章主要介紹了Python接口測試之如何使用requests發(fā)起請求問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python利用手勢識別實現(xiàn)貪吃蛇游戲

    Python利用手勢識別實現(xiàn)貪吃蛇游戲

    想必大家都玩過貪吃蛇的游戲吧:通過操縱蛇的移動方向能夠讓蛇吃到隨機出現(xiàn)的食物,吃到的食物越多,蛇就會變得越長。本文將使用手勢識別來完成貪吃蛇這個簡單的游戲,感興趣的可以了解一下
    2022-04-04
  • python經(jīng)典百題之static定義靜態(tài)變量的三種方法

    python經(jīng)典百題之static定義靜態(tài)變量的三種方法

    日常腳本編寫過程中時常會用到python的靜態(tài)方法、實例方法、類方法,下面這篇文章主要給大家介紹了關(guān)于python經(jīng)典百題之static定義靜態(tài)變量的三種方法,需要的朋友可以參考下
    2024-09-09
  • Python爬蟲實戰(zhàn)之虎牙視頻爬取附源碼

    Python爬蟲實戰(zhàn)之虎牙視頻爬取附源碼

    讀萬卷書不如行萬里路,學(xué)的扎不扎實要通過實戰(zhàn)才能看出來,本篇文章手把手帶你爬取虎牙短視頻數(shù)據(jù),大家可以在實戰(zhàn)過程中查缺補漏,加深學(xué)習(xí)
    2021-10-10
  • Python數(shù)據(jù)分析Pandas?Dataframe排序操作

    Python數(shù)據(jù)分析Pandas?Dataframe排序操作

    這篇文章主要介紹了Python數(shù)據(jù)分析Pandas?Dataframe排序操作,數(shù)據(jù)的排序是比較常用的操作,DataFrame?的排序分為兩種,一種是對索引進(jìn)行排序,另一種是對值進(jìn)行排序,接下來就分別都介紹一下,需要的小伙伴可以參考一下
    2022-05-05
  • Python+API打造一個終端天氣預(yù)報工具

    Python+API打造一個終端天氣預(yù)報工具

    這篇文章主要為大家詳細(xì)介紹了如何利用Python和API打造一個終端天氣預(yù)報工具,支持城市查詢,天氣圖標(biāo),美化輸出,有需要的小伙伴可以了解一下
    2025-07-07

最新評論