Projects:
使用難度:★
Star數(shù):4922
亮點(diǎn):集合了各種常見(jiàn)項(xiàng)目以及每個(gè)項(xiàng)目的各種語(yǔ)言的代碼實(shí)現(xiàn)
G哥說(shuō):
準(zhǔn)確的說(shuō),Projects只是提出了常見(jiàn)項(xiàng)目,并沒(méi)有具體代碼。具體的代碼在另一個(gè)庫(kù)里,名字是“Projects-Solutions”。
最牛逼的是,代碼實(shí)現(xiàn)包括多種語(yǔ)言,比如Python、JS、PHP、Ruby、C、Haskell、C++、C#、Java。
下次你再需要寫算法或者基礎(chǔ)項(xiàng)目的時(shí)候,不用從頭開(kāi)始了,直接找對(duì)應(yīng)語(yǔ)言的代碼實(shí)現(xiàn)來(lái)使用吧!
一些項(xiàng)目:
尋找素因子
二進(jìn)制和十進(jìn)制互相轉(zhuǎn)換
排序
計(jì)算歐拉路徑
計(jì)算字符串中的單詞數(shù)
網(wǎng)頁(yè)爬蟲(chóng)
FTP
PDF生成器
SQL查詢分析
……
還有很多,我就不一一列舉了,大家可以自己去看。
basiccoin:
使用難度:★★★★★
Star數(shù):259
亮點(diǎn):實(shí)現(xiàn)了數(shù)字貨幣基本算法,可以自行定制擴(kuò)展
G哥說(shuō):
比特幣現(xiàn)在已經(jīng)無(wú)人不知無(wú)人不曉了。雖然不斷有人唱衰比特幣,偶爾也會(huì)爆出一些漏洞,但是總體來(lái)說(shuō)比特幣的前景還是比較光明的。
比特幣的算法簡(jiǎn)單說(shuō)就是隨著時(shí)間增加,獲得比特幣的難度也會(huì)增加,這就導(dǎo)致比特幣會(huì)越來(lái)越值錢,因?yàn)閿?shù)量增加越來(lái)越緩慢。
basiccoin是一個(gè)非常簡(jiǎn)單的數(shù)字貨幣,包含基本的算法和界面。作者希望創(chuàng)造一個(gè)通用的數(shù)字貨幣基礎(chǔ),感興趣的人可以根據(jù)自己的需要進(jìn)行改進(jìn)和定制。
basiccoin目前還處于社會(huì)主義初級(jí)階段,一些高級(jí)屬性還不具備,作者仍然在開(kāi)發(fā)中。
Pattern:
使用難度:★★★★
Star數(shù):2324
亮點(diǎn):支持?jǐn)?shù)據(jù)挖掘、自然語(yǔ)言處理、機(jī)器學(xué)習(xí)和網(wǎng)絡(luò)分析
G哥說(shuō):
數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)也算是現(xiàn)在的大熱門之一了。大數(shù)據(jù)概念越炒越熱,加上深度學(xué)習(xí)算法的不斷發(fā)展,數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí)變得越來(lái)越重要。
Pattern是一個(gè)工具,提供了一些基礎(chǔ)的算法實(shí)現(xiàn)并且封裝了常用網(wǎng)站的數(shù)據(jù)獲取操作(Google、Bing、Twitter、Wikipedia),大大簡(jiǎn)化了數(shù)據(jù)獲取和分析的難度。
需要注意的是,Pattern不支持Python3,并且沒(méi)有封裝國(guó)人比較常用的網(wǎng)站比如Sina,感興趣的朋友可以嘗試一下貢獻(xiàn)代碼。
舉個(gè)例子:
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上獲取標(biāo)簽為 WIN 或者 FAIL 的推文,然后用這些推文構(gòu)造一個(gè)分類器,最后用這個(gè)分類器來(lái)判斷其他推文是 WIN 還是 FAIL。
十幾行代碼實(shí)現(xiàn)數(shù)據(jù)獲取以及分類器的訓(xùn)練,真的是神器了。。。
如果大家覺(jué)得這篇文章還不錯(cuò)的話請(qǐng)動(dòng)動(dòng)手指分享一下吧~你們的支持就是我最大的動(dòng)力!
歡迎掃描二維碼關(guān)注我的微信號(hào)“GitHub不完全裝B指南”,獲取最新文章。
謝謝~