Projects:
使用難度:★
Star數(shù):4922
亮點:集合了各種常見項目以及每個項目的各種語言的代碼實現(xiàn)
G哥說:
準確的說,Projects只是提出了常見項目,并沒有具體代碼。具體的代碼在另一個庫里,名字是“Projects-Solutions”。
最牛逼的是,代碼實現(xiàn)包括多種語言,比如Python、JS、PHP、Ruby、C、Haskell、C++、C#、Java。
下次你再需要寫算法或者基礎項目的時候,不用從頭開始了,直接找對應語言的代碼實現(xiàn)來使用吧!
一些項目:
尋找素因子
二進制和十進制互相轉(zhuǎn)換
排序
計算歐拉路徑
計算字符串中的單詞數(shù)
網(wǎng)頁爬蟲
FTP
PDF生成器
SQL查詢分析
……
還有很多,我就不一一列舉了,大家可以自己去看。
basiccoin:
使用難度:★★★★★
Star數(shù):259
亮點:實現(xiàn)了數(shù)字貨幣基本算法,可以自行定制擴展
G哥說:
比特幣現(xiàn)在已經(jīng)無人不知無人不曉了。雖然不斷有人唱衰比特幣,偶爾也會爆出一些漏洞,但是總體來說比特幣的前景還是比較光明的。
比特幣的算法簡單說就是隨著時間增加,獲得比特幣的難度也會增加,這就導致比特幣會越來越值錢,因為數(shù)量增加越來越緩慢。
basiccoin是一個非常簡單的數(shù)字貨幣,包含基本的算法和界面。作者希望創(chuàng)造一個通用的數(shù)字貨幣基礎,感興趣的人可以根據(jù)自己的需要進行改進和定制。
basiccoin目前還處于社會主義初級階段,一些高級屬性還不具備,作者仍然在開發(fā)中。
Pattern:
使用難度:★★★★
Star數(shù):2324
亮點:支持數(shù)據(jù)挖掘、自然語言處理、機器學習和網(wǎng)絡分析
G哥說:
數(shù)據(jù)挖掘、機器學習也算是現(xiàn)在的大熱門之一了。大數(shù)據(jù)概念越炒越熱,加上深度學習算法的不斷發(fā)展,數(shù)據(jù)挖掘和機器學習變得越來越重要。
Pattern是一個工具,提供了一些基礎的算法實現(xiàn)并且封裝了常用網(wǎng)站的數(shù)據(jù)獲取操作(Google、Bing、Twitter、Wikipedia),大大簡化了數(shù)據(jù)獲取和分析的難度。
需要注意的是,Pattern不支持Python3,并且沒有封裝國人比較常用的網(wǎng)站比如Sina,感興趣的朋友可以嘗試一下貢獻代碼。
舉個例子:
from pattern.web import Twitter
from pattern.en import tag
from pattern.vector import KNN, count
twitter, knn = Twitter(), KNN()
for i in range(1, 3):
for tweet in twitter.search('#win OR #fail', start=i, count=100):
s = tweet.text.lower()
p = '#win' in s and 'WIN' or 'FAIL'
v = tag(s)
v = [word for word, pos in v if pos == 'JJ'] # JJ = adjective
v = count(v) # {'sweet': 1}
if v:
knn.train(v, type=p)
print knn.classify('sweet potato burger')
print knn.classify('stupid autocorrect')
這段代碼干了什么事呢?首先從Twitter上獲取標簽為 WIN 或者 FAIL 的推文,然后用這些推文構造一個分類器,最后用這個分類器來判斷其他推文是 WIN 還是 FAIL。
十幾行代碼實現(xiàn)數(shù)據(jù)獲取以及分類器的訓練,真的是神器了。。。
如果大家覺得這篇文章還不錯的話請動動手指分享一下吧~你們的支持就是我最大的動力!
歡迎掃描二維碼關注我的微信號“GitHub不完全裝B指南”,獲取最新文章。
謝謝~