Task2 數(shù)據(jù)讀取與數(shù)據(jù)分析[?]
本章主要內(nèi)容為數(shù)據(jù)讀取和數(shù)據(jù)分析待锈,具體使用Pandas
庫(kù)完成數(shù)據(jù)讀取操作,并對(duì)賽題數(shù)據(jù)進(jìn)行分析構(gòu)成。
學(xué)習(xí)目標(biāo)
- 學(xué)習(xí)使用
Pandas
讀取賽題數(shù)據(jù) - 分析賽題數(shù)據(jù)的分布規(guī)律
導(dǎo)入必要庫(kù)
import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
import seaborn as sns
plt.rcParams['font.sans-serif'] = ['SimHei']
這里設(shè)置plt的字體顯示
讀取數(shù)據(jù)
train_df = pd.read_csv('../Data/train_set.csv', sep='\t')
csv數(shù)據(jù)的讀取,可以看一下數(shù)據(jù)的基本信息和情況
數(shù)據(jù)分析?
在讀取完成數(shù)據(jù)集后涮因,我們還可以對(duì)數(shù)據(jù)集進(jìn)行數(shù)據(jù)分析的操作。雖然對(duì)于非結(jié)構(gòu)數(shù)據(jù)并不需要做很多的數(shù)據(jù)分析恨憎,但通過(guò)數(shù)據(jù)分析還是可以找出一些規(guī)律的。
此步驟我們讀取了所有的訓(xùn)練集數(shù)據(jù)郊楣,在此我們通過(guò)數(shù)據(jù)分析希望得出以下結(jié)論:
- 賽題數(shù)據(jù)中憔恳,新聞文本的長(zhǎng)度是多少?
- 賽題數(shù)據(jù)的類別分布是怎么樣的净蚤,哪些類別比較多钥组?
- 賽題數(shù)據(jù)中谍失,字符分布是怎么樣的次伶?
句子長(zhǎng)度分析
在賽題數(shù)據(jù)中每行句子的字符使用空格進(jìn)行隔開(kāi)簇爆,所以可以直接統(tǒng)計(jì)單詞的個(gè)數(shù)來(lái)得到每個(gè)句子的長(zhǎng)度勾拉。統(tǒng)計(jì)并如下:
文本長(zhǎng)度分布信息(豎軸顯示取log)
新聞?lì)悇e分布?
接下來(lái)可以對(duì)數(shù)據(jù)集的類別進(jìn)行分布統(tǒng)計(jì)枣察,具體統(tǒng)計(jì)每類新聞的樣本個(gè)數(shù)
字符分布統(tǒng)計(jì)
接下來(lái)可以統(tǒng)計(jì)每個(gè)字符出現(xiàn)的次數(shù)个扰,首先可以將訓(xùn)練集中所有的句子進(jìn)行拼接進(jìn)而劃分為字符斑芜,并統(tǒng)計(jì)每個(gè)字符的個(gè)數(shù)壤玫。
高頻詞語(yǔ)哥童,低頻詞語(yǔ)
本章作業(yè)
- 假設(shè)字符3750挺份,字符900和字符648是句子的標(biāo)點(diǎn)符號(hào),請(qǐng)分析賽題每篇新聞平均由多少個(gè)句子構(gòu)成贮懈?
- 統(tǒng)計(jì)每類新聞中出現(xiàn)次數(shù)對(duì)多的字符
Solution
-
python 自帶的split不能多條件分割匀泊,這里使用re模塊完成。
-
這里我選取了前五頻繁的字詞朵你。我們可以發(fā)現(xiàn)3750各聘,648,900幾乎在各類別中均是高頻詞語(yǔ)抡医,幾乎可以確定為標(biāo)點(diǎn)躲因。