機(jī)器學(xué)習(xí)實(shí)戰(zhàn)填坑記—k近鄰算法

由于書上的代碼用的是Py2.6的薯酝,所以當(dāng)我用Py3.5的時候出現(xiàn)了一些問題排龄。

第2章 k-近鄰算法
問題1:
在我加載函數(shù)classify0的時候按照書上的代碼出現(xiàn)錯誤腕唧,Python3: AttributeError: 'dict' object has no attribute 'iteritems' 。經(jīng)研究發(fā)現(xiàn)是書上的Py2.7的代碼跟我用的Py3.5是有差異的赔退,因此將函數(shù)中的classCount.iteritems()改為classCount.items()就好了橙依。

問題2:
當(dāng)我用>> reload(kNN)時候出現(xiàn)錯誤:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'reload' is not defined

經(jīng)查詢:In Python 2.x, this was a builtin, but in 3.x, it's in the imp module.
所以需要在前面加入命令from imp import reload

問題3:
研究示例“使用k-近鄰算法改進(jìn)約會網(wǎng)站的配對效果”的時候加載命令datingDataMat,datingLabels = kNN.file2matrix('datingTestSet.txt')出現(xiàn)錯誤:ValueError: invalid literal for int() with base 10: 'largeDoses'。
查看文件原來第四列為字符,下載的文件包含的有datingTestSet2.txt就是datingTestSet.txt對第4列轉(zhuǎn)換后得到的票编,現(xiàn)在也可以按如下方法對原來的文件datingTestSet.txt進(jìn)行變換得到datingTestSet2.txt

In [61]:table= pd.read_table('datingTestSet.txt', header = None)
In [62]:table.head(3)
Out[62]: 
       0         1         2           3
0  40920  8.326976  0.953952  largeDoses
1  14488  7.153469  1.673904  smallDoses
2  26052  1.441871  0.805124   didntLike
In [63]:table.columns = ('feixing','youxi','xiaofei','xiyin')
In [64]:table.head(3)
Out[64]: 
   feixing     youxi   xiaofei       xiyin
0    40920  8.326976  0.953952  largeDoses
1    14488  7.153469  1.673904  smallDoses
2    26052  1.441871  0.805124   didntLike
In [65]:table.count()
Out[65]: 
feixing    1000
youxi      1000
xiaofei    1000
xiyin      1000
dtype: int64

#將第四列按喜歡程度由弱到強(qiáng)轉(zhuǎn)換為數(shù)字1褪储,2,3
In [66]:def xiyin2shuzi(x):
    if x == 'largeDoses':
        return 3
    if x == 'smallDoses':
        return 2
    if x == 'didntLike':
        return 1
In [67]: table['xiyin'] = table['xiyin'].apply(xiyin2shuzi)
In [68]:table.head()
Out[68]: 
   feixing      youxi   xiaofei  xiyin
0    40920   8.326976  0.953952      3
1    14488   7.153469  1.673904      2
2    26052   1.441871  0.805124      1
3    75136  13.147394  0.428964      1
4    38344   1.669788  0.134296      1
In [69]:table.to_csv('datingTestSet2.txt', header = False, index = False,sep = '\t')
# header: Whether to write out the column names (default True)
# index: whether to write row (index) names (default True)
# '\t'是tab慧域,表示空格鲤竹。為了跟變更前的數(shù)據(jù)保持一致。

參考文章:機(jī)器學(xué)習(xí)1k近鄰 (注意這里面的代碼盡管Print里面加了雙括號也是Py2.x的代碼)
Python3.X新特性

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末昔榴,一起剝皮案震驚了整個濱河市辛藻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌互订,老刑警劉巖吱肌,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異仰禽,居然都是意外死亡氮墨,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門吐葵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來规揪,“玉大人,你說我怎么就攤上這事温峭∶颓Γ” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵凤藏,是天一觀的道長奸忽。 經(jīng)常有香客問我,道長揖庄,這世上最難降的妖魔是什么栗菜? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮蹄梢,結(jié)果婚禮上苛萎,老公的妹妹穿的比我還像新娘。我一直安慰自己检号,他們只是感情好腌歉,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著齐苛,像睡著了一般翘盖。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上凹蜂,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天馍驯,我揣著相機(jī)與錄音阁危,去河邊找鬼。 笑死汰瘫,一個胖子當(dāng)著我的面吹牛狂打,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播混弥,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼趴乡,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了蝗拿?” 一聲冷哼從身側(cè)響起晾捏,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎哀托,沒想到半個月后惦辛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡仓手,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年胖齐,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嗽冒。...
    茶點(diǎn)故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡市怎,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出辛慰,到底是詐尸還是另有隱情,我是刑警寧澤干像,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布帅腌,位于F島的核電站,受9級特大地震影響麻汰,放射性物質(zhì)發(fā)生泄漏速客。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一五鲫、第九天 我趴在偏房一處隱蔽的房頂上張望溺职。 院中可真熱鬧,春花似錦位喂、人聲如沸浪耘。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽七冲。三九已至,卻和暖如春规婆,著一層夾襖步出監(jiān)牢的瞬間澜躺,已是汗流浹背蝉稳。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留掘鄙,地道東北人耘戚。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像操漠,于是被迫代替她去往敵國和親收津。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容