1. 程式人生 > >Python資料分析 讀書筆記

Python資料分析 讀書筆記

其實就是nltk使用說明書

>>> import nltk
>>> nltk.download()
>>> from nltk.book import *

text1.concordance(“monstrous”)

text1.similar(“monstrous”) 。還有哪些詞出現在相似的上下文中?

函式common_contexts允許我們研究兩個或兩個以上的詞共同的上下文,如monstro
us和very。我們必須用方括號和圓括號把這些詞括起來,中間用逗號分割。

text4.dispersion_plot([“citizens”, “democracy”, “freedom”, “duties”, “America”])
以判斷詞在文字中的位置:從文字開頭算起在它前面有多少詞。這個位置資訊
可以用離散圖表示。每一個豎線代表一個單詞,每一行代表整個文字

使用
函式len 獲取長度

:set(text3)獲得text3 的詞彙表
用sorted()包裹起Python 表示式set(text3)��,我們得到一個詞彙項的排序表,
len(text3) / len(set(text3)) len(text3) / len(set(text3))多少次

text3.count(“smote”) 。計數一個詞在文字中出現的次

定義一個python函式 來重複執行
python儲存句子的方法 list
sentence1.append(“word”) z 追加
text4[173] 索引 text4.index(‘awaken’) text5[16715:16735] ,m:n 表示元素m…n-1 索引從零開始

我們可以把詞用連結串列連線起來組成單個字串,或者把字串分割成一個連結串列,如下面
所示:

>>> ' '.join(['Monty', 'Python'])
'Monty Python'
>>> 'Monty Python'.split()
['Monty', 'Python']

使用FreqDist 尋找《白鯨記》中最常見的50 個詞。嘗試下面的例子,然
後閱讀接下來的解釋。

>>> fdist1 = FreqDist(text1) ��
>>> fdist1 ��
<FreqDist with
260819 outcomes> >>> vocabulary1 = fdist1.keys() �� >>> vocabulary1[:50] ④ [',', 'the', '.', 'of', 'and', 'a', 'to', ';', 'in', 'that', "'", '-','his', 'it', 'I', 's', 'is', 'he', 'with', 'was', 'as', '"', 'all', 'for','this', '!', 'at', 'by', 'but', 'not', '--', 'him', 'from', 'be', 'on','so', 'whale', 'one', 'you', 'had', 'have', 'there', 'But', 'or', 'were','now', 'which', '?', 'me', 'like'] >>> fdist1['whale'] 906 >>>

fdist1.hapaxes() 只出現過一次的詞語

找出文字詞彙表長度中超過15 個字元的詞

 >>> V = set(text1)
>>> long_words = [w for w in V if len(w) > 15] 表示在V中 長度大於15的詞的集合
>>> sorted(long_words) 

是聊天語料庫中所有長度超過
7 個字元出現次數超過7 次的詞:

>>> fdist5 = FreqDist(text5)
>>> sorted([w for w in set(text5) if len(w) > 7 and fdist5[w] > 7])

! 中文 先 分詞 (e.g. 結巴分詞) 然後在用nltk來處理
分詞包分詞-> 文字變成長陣列->匹配詞典?-> nltk統計詞頻 找出頻率最高的那些詞
Python 解決中文編碼問題基本可以用以下邏輯:
utf8(輸入) ——> unicode(處理) ——> (輸出)utf8
由於處理的一般為txt 文件,所以最簡單的方法,是把txt 文件另存為utf-8 編碼,然後使用Python 處理的時候解碼為unicode(sometexts.decode(‘utf8’)),輸出結果回txt 的時候再編碼成utf8(直接用str() 函式就可以了)

Jieba:可以用來做分詞,詞性標註,TextRank https://github.com/fxsjy/jieba
HanLP:分詞,命名實體識別,依存句法分析,還有FudanNLP,NLPIR
我們使用的是ansj分詞,fnlp句法分析,用logistic做情感分類。以前也用過stanford的分詞和分析,但是結果還是fnlp效果好。NLTK確實不怎麼好用

collocations() 尋找 雙連詞 搭配

fdist = FreqDist([len(w) for w in text1]) 文字中詞長出現頻率
fdist.keys() fdist.itemss

len(set([word.lower() for word in text1 if word.isalpha()]))
16948 忽略大小寫 和數字標點 的統計

爬蟲 

你並不清楚對方是如何識別你的爬蟲,因此只能使用一些主要的偽裝技術來進行推測,將Agent欄位設定為一組主流瀏覽器的欄位,另外Referer欄位設定為空或設定為首頁地址試試!我估計對方未必是識別出你是爬蟲,否則直接中斷連線得了,可能是爬到有訪問控制保護的頁面了!

相關推薦

Python資料分析 讀書筆記

其實就是nltk使用說明書 >>> import nltk >>> nltk.download() >>> from nltk.book import * text1.concordance(“monst

python資料分析讀書筆記》--- 資料探索(一)

前言 當收集到初步的樣本資料集後,需要對資料從數據質量分析和資料特徵分析兩個方面進行探索分析,其中,資料質量分析要求我們先檢測資料的是否存在缺失值和異常值;而資料特徵分析要求我們在資料探勘建模前,通過頻率分佈分析,對比分析,帕斯托分析,週期性分析,相關性分析等

Numpy基礎 --陣列和向量計算 利用Python進行資料分析讀書筆記

Numpy 陣列和向量計算 程式碼下載 import numpy as np #ndarray物件 陣列 NumPy陣列 建立ndarray data1=[6,7.5,8,0,1] arr1=np.array(data1) a

Python資料分析學習筆記(1)numpy模組基礎入門

        numpy模組可以進行高效的資料處理,並提供了陣列的支援,很多模組都依賴他,比如pandas、scipy、matplotlib等,因此這個模組是基礎。 (1)匯入: import numpy (2)建立一維和二維陣列: #建立一維陣列 x=numpy.

Python資料分析學習筆記(6)資料規約實戰--以主成分分析PCA為例

一、相關理論: 1、資料規約:產生更小且保持資料完整性的新資料集。意義在於降低無效、錯誤資料;降低儲存成本;少量且具有代表性的資料大幅加快,主要分為以下兩類: ①屬性規約:屬性合併或刪除無關維,目標是尋找最小子集使子集概率分佈儘可能與原來相同。     常用方法: (

精益資料分析讀書筆記——第三章-你把生命獻給誰

精益畫布 精益畫布是呈現在一張紙上的視覺化簡明商業企劃書。 似乎可以參考這個思路做產品分析 1.問題 提出三個你認為該產品解決的最核心的痛點,從而提出該產品的商業目標。 例如摩拜解決的主要問題就是近距離的通行問題,打車貴,開車麻煩,走路又遠。自己騎自行車維護管

精益資料分析讀書筆記——第四章-以資料為嚮導與通過資料獲取資訊

這章沒太看懂……以後回頭再看 濫用資料容易導致區域性優化,進而忽視大局,這是極其危險乃至致命的。 人類提供靈感,機器負責驗證 數學在優化已知系統方向可以做的很好,而人類更善於發現新的系統。換言之,漸進式的改變可以達到區域性極限,創新則可能導致全域性洗牌。 #資料

精益資料分析讀書筆記——第五章-資料分析框架

戴夫·麥克盧爾的海盜指標說——AARRR 獲取使用者(Acquisition)、提高活躍度(Activation)、提高留存率(Retention)、獲取營收(Revenue)、自傳播(Referral) 要素 功用 相關指標 方式 獲取使用者

Python資料分析學習筆記——DataFrame(還在更新中)

pandas的官方文件 1.DataFrame DataFrame是一個表格型的資料結構,它含有一組有序的列,每列可以是不同的值型別(數值、字串、布林值等)。DataFrame既有行索引也有列索引,它可以被看做由Series組成的字典(共用同一個索引)。 DataFrame可以通過類

Numpy入門——Python資料分析mooc筆記

資料 一個數據,表達一個含義 一組資料,表達一個或多個含義 列表和陣列 列表:資料型別可以不同 陣列:資料型別相同 Python已有列表型別,為什麼需要一個數組物件(型別)? 陣列物件可以去掉元素間運算所需的迴圈,使一維向量更像單個數據

python資料分析學習筆記

第七章 訊號處理與時間序列 (需要統計學知識) 1 statsmodels 子庫 示例程式碼如下 import pkgutil as pu import pydoc import statsmodels as sm # statmodels版本號 print("statm

python 資料分析學習筆記 (第三章)

boxplot 箱形圖 catering_sale = '../data/catering_sale.xls' #餐飲資料 data = pd.read_excel(catering_sa

學習Python資料分析隨手筆記【三】numpy陣列的函式ix_()

今天我去圖書館借了一本Python DataAnalysis的書那今天來說一個關於numpy庫的內容。當然 課本給出的是著名的lena圖片。不過在pycharm上執行的時候發現它報錯了。隨即就去查看了scipy的檔案搜尋了半天。原來在新版本的scipy中已經將lena移除,不

python資料分析學習筆記

第九章 分析文字資料和社交媒體 1 安裝nltk 略 2 濾除停用字 姓名和數字 示例程式碼如下: import nltk # 載入英語停用字語料 sw = set(nltk.corpus.stopwords.words('english')) print('Sto

Cris 的 Python 資料分析筆記 04:NumPy 矩陣的複製,排序,拓展

04. 矩陣的複製,排序,拓展 文章目錄 04. 矩陣的複製,排序,拓展 1. NumPy 的引用問題 2. 淺複製 3 深複製 4. 索引求最值 5. title 擴充

Cris 的 Python 資料分析筆記 03:NumPy 矩陣運算和常用函式(重點)

03. 矩陣運算和常用函式(重點) 文章目錄 03. 矩陣運算和常用函式(重點) 1. numpy 矩陣判斷和計算 1.1 與運算 1.2 或運算 1.3 或運算作為矩陣索引賦值

Cris 的 Python 資料分析筆記 02:NumPy 資料定位

02. NumPy 資料定位 文章目錄 02. NumPy 資料定位 1. numpy 快速判斷每個元素 2. numpy 判斷並返回對應的元素 1. numpy 快速判斷每個元素 i

Cris 的 Python 資料分析筆記 01:NumPy 基本知識

01. NumPy基本知識 文章目錄 01. NumPy基本知識 1. numpy 的第一個函式 genfromtxt 2. numpy 的第二個函式 array 3. numpy 的第三個函式 shape

Python 資料分析與展示筆記4 -- Pandas 庫基礎

Python 資料分析與展示筆記4 – Pandas 庫基礎 Python 資料分析與展示系列筆記是筆者學習、實踐Python 資料分析與展示的相關筆記 課程連結: Python 資料分析與展示 參考文件: Numpy 官方文件(英文) Numpy 官方文件(中文) P

Python 資料分析與展示筆記3 -- Matplotlib 庫基礎

Python 資料分析與展示筆記3 – Matplotlib 庫基礎 Python 資料分析與展示系列筆記是筆者學習、實踐Python 資料分析與展示的相關筆記 課程連結: Python 資料分析與展示 參考文件: Numpy 官方文件(英文) Numpy 官方文件(中