中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

數(shù)據(jù)科學中一些不常用但很有用的Python庫

2020-04-28    來源:raincent

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

提到數(shù)據(jù)科學的python包,大家想到的估計是numpy,pandas,scikit-learn之類的,這里給大家介紹一些不常用,但是非常有用的python包,就像是癢癢撓,雖然大部分時間用不上,但是真要用起來,還是挺爽的。

 

作者:AI公園

Python是個了不起的語言。事實上,這是世界上發(fā)展最快的語言之一(感覺沒有之一,就是最快的)。在數(shù)據(jù)科學領域和開發(fā)領域,一次又一次的為我們提供便利。整個Python的生態(tài)和庫使之成為所有用戶都適用(初學者和高級用戶)。Python之所以這么成功,原因之一就在于它的庫,讓Python變得靈活快速。

這篇文章中,我們會看一些不太常用的數(shù)據(jù)科學的庫,除了pandas,scikit-learn,matplotlib等。盡管說到數(shù)據(jù)科學,我們想到的就是pandas和scikit-learn,了解一下其他的python的庫也沒什么壞處。下面就是另外一些數(shù)據(jù)科學中可能會用到的Python庫。

Wget

從網(wǎng)絡獲取數(shù)據(jù)是Python科學家非常重要的任務。Wget是一個免費的工具,可以從Web上非交互式的下載文件,支持HTTP, HTTPS, 和 FTP協(xié)議,同樣支持HTTP代理。由于是非交互式的,所以可以后臺運行,用戶沒有登錄也可以。所以下次你需要從網(wǎng)上下載圖片的時候,可以試試wget。

安裝:

  1. $ pip install wget

例子:

  1. import wget
  2. url = 'http://www.futurecrew.com/skaven/song_files/mp3/razorback.mp3'
  3. filename = wget.download(url)
  4. 100% [................................................] 3841532 / 3841532
  5. filename
  6. 'razorback.mp3'

Pendulum

這個是干啥的呢,你在處理日期時間的時候搞得頭大的時候,Pendulum就很適合你,這包是用來簡化日期時間的操作的,具體使用可以看 這里 。

安裝:

  1. $ pip install pendulum

例子:

  1. import pendulum
  2. dt_toronto = pendulum.datetime(2012, 1, 1, tz='America/Toronto')
  3. dt_vancouver = pendulum.datetime(2012, 1, 1, tz='America/Vancouver')
  4. print(dt_vancouver.diff(dt_toronto).in_hours())
  5. 3

imbalanced-learn

大多數(shù)的分類問題中,當所有的類別中的樣本的數(shù)量大致相同時,效果是最好的,也就是樣本均衡。但是在實際情況中,往往都是非均衡的數(shù)據(jù),這往往會影響訓練的過程以及后面的預測。幸好,這個庫可以幫我們解決這個問題。這個和scikit-learn兼容,是scikit-learn-contrib的一部分。下次可以試試。

安裝:

  1. pip install -U imbalanced-learn
  2. # or
  3. conda install -c conda-forge imbalanced-learn

例子:

請參考文檔。

FlashText

在清洗NLP相關的數(shù)據(jù)的時候,往往需要替換一些關鍵詞或者提取一些關鍵詞。通常,可以用正則表達式來干這個活,不過正則條件的數(shù)量上千的時候,就會很頭大。FlashText是基于FlashText算法的一個模塊,提供了這種情況下的一個替代工具,F(xiàn)lashText最好的地方在于運行時間是和搜索的條件的數(shù)量不相關的。更多的信息可以看這里。

安裝:

  1. $ pip install flashtext

例子:

提取關鍵詞

  1. from flashtext import KeywordProcessor
  2. keyword_processor = KeywordProcessor()
  3. # keyword_processor.add_keyword(name>, name>)
  4. keyword_processor.add_keyword('Big Apple', 'New York')
  5. keyword_processor.add_keyword('Bay Area')
  6. keywords_found = keyword_processor.extract_keywords('I love Big Apple and Bay Area.')
  7. keywords_found
  8. ['New York', 'Bay Area']

替換關鍵詞

  1. keyword_processor.add_keyword('New Delhi', 'NCR region')
  2. new_sentence = keyword_processor.replace_keywords('I love Big Apple and new delhi.')
  3. new_sentence
  4. 'I love New York and NCR region.'

Fuzzywuzzy

名字聽起來怪怪的,不過在字符匹配的時候,用起來還是爽爽的?梢暂p松的實現(xiàn)字符比例,token比例等。還可以在不同的數(shù)據(jù)集中進行匹配。

安裝:

  1. $ pip install fuzzywuzzy

例子:

  1. from fuzzywuzzy import fuzz
  2. from fuzzywuzzy import process
  3. # Simple Ratio
  4. fuzz.ratio("this is a test", "this is a test!")
  5. 97
  6. # Partial Ratio
  7. fuzz.partial_ratio("this is a test", "this is a test!")
  8. 100

PyFlux

時間序列的處理是機器學習領域經(jīng)常遇到的問題。PyFlux就是專門用來處理時間序列問題的開源Python庫。這個庫里有一系列的時間序列模型如ARIMA, GARCH 和VAR 等。簡單來說,PyFlux提供了時間序列到概率的建模,值的一試。

安裝

  1. pip install pyflux

例子

參考這里 。

Ipyvolume

交流結果是數(shù)據(jù)科學的非常重要的方面。結果可視化是個非常重要的優(yōu)勢。IPyvolume是個3D可視化庫,不過這還是在pre-1.0的階段,可以這樣類別一下, IPyvolume是對3維數(shù)據(jù)的可視化,matplotlib是對二維數(shù)據(jù)的可視化。具體可以看 這里。

安裝

  1. Using pip
  2. $ pip install ipyvolume
  3. Conda/Anaconda
  4. $ conda install -c conda-forge ipyvolume

例子

標記

 

 

渲染

 

 

Dash

這是個創(chuàng)建web應用的用戶生產(chǎn)的Python框架;贔lask寫的,可以用來構建數(shù)據(jù)可視化的app,這些app可以在網(wǎng)絡瀏覽器上渲染。用戶手冊可見 這里.

安裝

  1. pip install dash==0.29.0 # The core dash backend
  2. pip install dash-html-components==0.13.2 # HTML components
  3. pip install dash-core-components==0.36.0 # Supercharged components
  4. pip install dash-table==3.1.3 # Interactive DataTable component (new!)

例子

 

 

Gym

Gym來自OpenAI,用來做強化學習。兼容所有的數(shù)值計算庫,如TensorFlow,Theano等。這個庫提供了一個問題測試的環(huán)境,你可以用這個環(huán)境來實驗你的強化學習算法。這些環(huán)境共享界面,使你可以寫通用的算法。

安裝

  1. pip install gym

例子

 

 

結論

這是我選的一些有用但是不常用的python庫,如果你知道其他的話,可以繼續(xù)添加,別忘了先試試。

標簽: 數(shù)據(jù) 

版權申明:本站文章部分自網(wǎng)絡,如有侵權,請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:大數(shù)據(jù)時代:數(shù)據(jù)可視化的特征及應用場景

下一篇:區(qū)塊鏈在智慧城市領域的探索應用