python 邏輯回歸——案例房屋用戶畫像是否擁有房屋預(yù)測

import pandas;

from pandas import read_csv;

data = read_csv(

'D:\\PDM\\4.4\\data.csv',

encoding='utf8'

)


data = data.dropna()

data.shape

dummyColumns = [

'Gender', 'Home Ownership',

'Internet Connection', 'Marital Status',

'Movie Selector', 'Prerec Format', 'TV Signal'

]#確定模糊變量的屬性

for column in dummyColumns:

data[column]=data[column].astype('category')

dummiesData = pandas.get_dummies(

data,

columns=dummyColumns,

prefix=dummyColumns,

prefix_sep=" ",

drop_first=True

)#模糊變量的數(shù)據(jù)框的生成

data.Gender.unique()

dummiesData.columns

"""

博士后? ? Post-Doc

博士? ? ? Doctorate

碩士? ? ? Master's Degree

學(xué)士? ? ? Bachelor's Degree

副學(xué)士? ? Associate's Degree

專業(yè)院校? Some College

職業(yè)學(xué)校? Trade School

高中? ? ? High School

小學(xué)? ? ? Grade School

"""

educationLevelDict = {

'Post-Doc': 9,

'Doctorate': 8,

'Master\'s Degree': 7,

'Bachelor\'s Degree': 6,

'Associate\'s Degree': 5,

'Some College': 4,

'Trade School': 3,

'High School': 2,

'Grade School': 1

}

dummiesData['Education Level Map'] = dummiesData['Education Level'].map(educationLevelDict)#利用map函數(shù)確定模糊變量的層次

freqMap = {

'Never': 0,

'Rarely': 1,

'Monthly': 2,

'Weekly': 3,

'Daily': 4

}#確定等級手报,有點類似RMF中的分組分層蚯舱。

dummiesData['PPV Freq Map'] = dummiesData['PPV Freq'].map(freqMap)

dummiesData['Theater Freq Map'] = dummiesData['Theater Freq'].map(freqMap)

dummiesData['TV Movie Freq Map'] = dummiesData['TV Movie Freq'].map(freqMap)

dummiesData['Prerec Buying Freq Map'] = dummiesData['Prerec Buying Freq'].map(freqMap)

dummiesData['Prerec Renting Freq Map'] = dummiesData['Prerec Renting Freq'].map(freqMap)

dummiesData['Prerec Viewing Freq Map'] = dummiesData['Prerec Viewing Freq'].map(freqMap)#確定以上這些屬性的值的層次

dummiesData.columns

dummiesSelect = [

'Age', 'Num Bathrooms', 'Num Bedrooms', 'Num Cars', 'Num Children', 'Num TVs',

'Education Level Map', 'PPV Freq Map', 'Theater Freq Map', 'TV Movie Freq Map',

'Prerec Buying Freq Map', 'Prerec Renting Freq Map', 'Prerec Viewing Freq Map',

'Gender Male',

'Internet Connection DSL', 'Internet Connection Dial-Up',

'Internet Connection IDSN', 'Internet Connection No Internet Connection',

'Internet Connection Other',

'Marital Status Married', 'Marital Status Never Married',

'Marital Status Other', 'Marital Status Separated',

'Movie Selector Me', 'Movie Selector Other', 'Movie Selector Spouse/Partner',

'Prerec Format DVD', 'Prerec Format Laserdisk', 'Prerec Format Other',

'Prerec Format VHS', 'Prerec Format Video CD',

'TV Signal Analog antennae', 'TV Signal Cable',

'TV Signal Digital Satellite', 'TV Signal Don\'t watch TV'

]#自變量選擇

inputData = dummiesData[dummiesSelect]

outputData = dummiesData[['Home Ownership Rent']]#因變量的確定

from sklearn import linear_model#導(dǎo)入線性模型

lrModel = linear_model.LogisticRegression()

lrModel.fit(inputData, outputData)

lrModel.score(inputData, outputData)#確定匹配得分

newData = read_csv(

'D:\\PDM\\4.4\\newData.csv',

encoding='utf8'

)#導(dǎo)入新的數(shù)據(jù)

for column in dummyColumns:

newData[column] = newData[column].astype(

'category',

categories=data[column].cat.categories

)#確定模糊類別

newData = newData.dropna()

newData['Education Level Map'] = newData['Education Level'].map(educationLevelDict)

newData['PPV Freq Map'] = newData['PPV Freq'].map(freqMap)

newData['Theater Freq Map'] = newData['Theater Freq'].map(freqMap)

newData['TV Movie Freq Map'] = newData['TV Movie Freq'].map(freqMap)

newData['Prerec Buying Freq Map'] = newData['Prerec Buying Freq'].map(freqMap)

newData['Prerec Renting Freq Map'] = newData['Prerec Renting Freq'].map(freqMap)

newData['Prerec Viewing Freq Map'] = newData['Prerec Viewing Freq'].map(freqMap)

dummiesNewData = pandas.get_dummies(

newData,

columns=dummyColumns,

prefix=dummyColumns,

prefix_sep=" ",

drop_first=True

)#處理模糊變量

inputNewData = dummiesNewData[dummiesSelect]

lrModel.predict(inputData)

#輸出預(yù)測的結(jié)果。

虛擬變量(dummy variables)

虛擬變量掩蛤,也叫啞變量和離散特征編碼枉昏,可用來表示分類變量、非數(shù)量因素可能產(chǎn)生的影響揍鸟。

① 離散特征的取值之間有大小的意義

例如:尺寸(L兄裂、XL、XXL)

離散特征的取值有大小意義的處理函數(shù)map

pandas.Series.map(dict)

參數(shù) dict:映射的字典

② 離散特征的取值之間沒有大小的意義

pandas.get_dummies

例如:顏色(Red,Blue,Green)

處理函數(shù):

get_dummies(data,prefix=None,prefix_sep="_",dummy_na=False,columns=None,drop_first=False)

① data ? 要處理的DataFrame

② prefix 列名的前綴阳藻,在多個列有相同的離散項時候使用

③ prefix_sep 前綴和離散值的分隔符,默認(rèn)為下劃線,默認(rèn)即可

④ dummy_na 是否把NA值臂痕,作為一個離散值進行處理尤慰,默認(rèn)為不處理

⑤ columns 要處理的列名,如果不指定該列道川,那么默認(rèn)處理所有列

⑥ drop_first 是否從備選項中刪除第一個午衰,建模的時候為避免共線性使用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市冒萄,隨后出現(xiàn)的幾起案子臊岸,更是在濱河造成了極大的恐慌,老刑警劉巖尊流,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件帅戒,死亡現(xiàn)場離奇詭異,居然都是意外死亡崖技,警方通過查閱死者的電腦和手機逻住,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來迎献,“玉大人瞎访,你說我怎么就攤上這事∮趸校” “怎么了扒秸?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長冀瓦。 經(jīng)常有香客問我伴奥,道長,這世上最難降的妖魔是什么翼闽? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任拾徙,我火速辦了婚禮,結(jié)果婚禮上感局,老公的妹妹穿的比我還像新娘尼啡。我一直安慰自己暂衡,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布玄叠。 她就那樣靜靜地躺著古徒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪读恃。 梳的紋絲不亂的頭發(fā)上隧膘,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機與錄音寺惫,去河邊找鬼疹吃。 笑死,一個胖子當(dāng)著我的面吹牛西雀,可吹牛的內(nèi)容都是我干的萨驶。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼艇肴,長吁一口氣:“原來是場噩夢啊……” “哼腔呜!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起再悼,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤核畴,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后冲九,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谤草,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年莺奸,在試婚紗的時候發(fā)現(xiàn)自己被綠了丑孩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡灭贷,死狀恐怖温学,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情甚疟,我是刑警寧澤仗岖,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站古拴,受9級特大地震影響箩帚,放射性物質(zhì)發(fā)生泄漏真友。R本人自食惡果不足惜黄痪,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望盔然。 院中可真熱鬧桅打,春花似錦是嗜、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至遭铺,卻和暖如春丽柿,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背魂挂。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工甫题, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人涂召。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓坠非,卻偏偏與公主長得像,于是被迫代替她去往敵國和親果正。 傳聞我的和親對象是個殘疾皇子炎码,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,877評論 2 345

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