成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Kaggle 比賽: 德國(guó)信用卡違約數(shù)據(jù)分析

zombieda / 2591人閱讀

摘要:數(shù)據(jù)描述,我們來(lái)看看數(shù)據(jù)的格式到為個(gè)不同類別的特征,為列,一共有條數(shù)據(jù),下面列舉其中一條當(dāng)作例子數(shù)據(jù)處理與數(shù)據(jù)分析下面展示一下數(shù)據(jù)處理流程,主要是處理了一下缺失值,然后根據(jù)特征按連續(xù)型和離散型進(jìn)行分別處理,使用了里面的包,下面的代碼都有

數(shù)據(jù)描述

German Credit Data, 我們來(lái)看看數(shù)據(jù)的格式,

A1 到 A15 為 15個(gè)不同類別的特征,A16 為 label 列,一共有 690條數(shù)據(jù),下面列舉其中一條當(dāng)作例子:

A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 A16
b 30.83 0 u g w v 1.25 t t 01 f g 00202 0 +
Attribute Information:
    A1:    b, a.
    A2:    continuous.
    A3:    continuous.
    A4:    u, y, l, t.
    A5:    g, p, gg.
    A6:    c, d, cc, i, j, k, m, r, q, w, x, e, aa, ff.
    A7:    v, h, bb, j, n, z, dd, ff, o.
    A8:    continuous.
    A9:    t, f.
    A10:    t, f.
    A11:    continuous.
    A12:    t, f.
    A13:    g, p, s.
    A14:    continuous.
    A15:    continuous.
    A16: +,-         (class attribute)
Missing Attribute Values:
37 cases (5%) have one or more missing values.  The missing
values from particular attributes are:

A1:  12
A2:  12
A4:   6
A5:   6
A6:   9
A7:   9
A14: 13
Class Distribution
+: 307 (44.5%)
-: 383 (55.5%)
數(shù)據(jù)處理與數(shù)據(jù)分析

下面展示一下數(shù)據(jù)處理流程,主要是處理了一下缺失值,然后根據(jù)特征按連續(xù)型和離散型進(jìn)行分別處理,使用了 sklearn 里面的 LogisticRegression 包,下面的代碼都有很詳細(xì)的注釋。

import pandas as pd
import numpy as np
import matplotlib as plt
import seaborn as sns

# 讀取數(shù)據(jù)
data = pd.read_csv("./crx.data")

# 給數(shù)據(jù)增加列標(biāo)簽
data.columns = ["f1", "f2", "f3", "f4", "f5", "f6", "f7", "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", "label"]

# 替換 label 映射
label_mapping = {
    "+": 1,
    "-": 0
}

data["label"] = data["label"].map(label_mapping)

# 處理缺省值的方法
data = data.replace("?", np.nan)

# 將 object 類型的列轉(zhuǎn)換為 float型
data["f2"] = pd.to_numeric(data["f2"])
data["f14"] = pd.to_numeric(data["f14"])

# 連續(xù)型特征如果有缺失值的話,用它們的平均值替代
data["f2"] = data["f2"].fillna(data["f2"].mean())
data["f3"] = data["f3"].fillna(data["f3"].mean())
data["f8"] = data["f8"].fillna(data["f8"].mean())
data["f11"] = data["f11"].fillna(data["f11"].mean())
data["f14"] = data["f14"].fillna(data["f14"].mean())
data["f15"] = data["f15"].fillna(data["f15"].mean())

# 離散型特征如果有缺失值的話,用另外一個(gè)不同的值替代
data["f1"] = data["f1"].fillna("c")
data["f4"] = data["f4"].fillna("s")
data["f5"] = data["f5"].fillna("gp")
data["f6"] = data["f6"].fillna("hh")
data["f7"] = data["f7"].fillna("ee")
data["f13"] = data["f13"].fillna("ps")

tf_mapping = {
    "t": 1,
    "f": 0
}

data["f9"] = data["f9"].map(tf_mapping)
data["f10"] = data["f10"].map(tf_mapping)
data["f12"] = data["f12"].map(tf_mapping)
# 給離散的特征進(jìn)行 one-hot 編碼
data = pd.get_dummies(data)
from sklearn.linear_model import LogisticRegression

# 打亂順序
shuffled_rows = np.random.permutation(data.index)

# 劃分本地測(cè)試集和訓(xùn)練集
highest_train_row = int(data.shape[0] * 0.70)
train = data.iloc[0:highest_train_row]
loc_test = data.iloc[highest_train_row:]

# 去掉最后一列 label 之后的才是 feature
features = train.drop(["label"], axis = 1).columns

model = LogisticRegression()
X_train = train[features]
y_train = train["label"] == 1

model.fit(X_train, y_train)
X_test = loc_test[features]

test_prob = model.predict(X_test)
test_label = loc_test["label"]

# 本地測(cè)試集上的準(zhǔn)確率
accuracy_test = (test_prob == loc_test["label"]).mean()
print accuracy_test
0.835748792271
from sklearn import cross_validation, metrics

#驗(yàn)證集上的auc值
test_auc = metrics.roc_auc_score(test_label, test_prob)#驗(yàn)證集上的auc值
print test_auc 
0.835748792271

簡(jiǎn)單使用了一下邏輯回歸,發(fā)現(xiàn)準(zhǔn)確率是 0.835748792271,AUC 值是 0.835748792271,效果還不錯(cuò),接下來(lái)對(duì)模型進(jìn)行優(yōu)化來(lái)進(jìn)一步提高準(zhǔn)確率。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/44310.html

相關(guān)文章

  • 為什么Kaggle不會(huì)讓你成為一名出色的數(shù)據(jù)科學(xué)家?

    摘要:缺少投資回報(bào)率的分析環(huán)節(jié)公司正在加大數(shù)據(jù)科學(xué)技能方面的投入。通常,成功的分析項(xiàng)目需要數(shù)據(jù)科學(xué)算法與投資回報(bào)率緊密相關(guān)。并不涉及這方面的分析,而只專注預(yù)測(cè),并不考慮如何把數(shù)據(jù)科學(xué)結(jié)果應(yīng)用于投資回報(bào)率。 showImg(https://segmentfault.com/img/bVbmSt7?w=900&h=523); 作者 | Pranay DaveCDA 數(shù)據(jù)分析師原創(chuàng)作品,轉(zhuǎn)載需授權(quán)...

    evin2016 評(píng)論0 收藏0
  • Kaggle冠軍經(jīng)驗(yàn)分享丨如何用15個(gè)月沖到排行榜的首位

    摘要:你是如何開(kāi)始參加比賽的正如之前所說(shuō)的,我一直在閱讀大量機(jī)器學(xué)習(xí)和深度學(xué)習(xí)方面的書(shū)籍和論文,但發(fā)現(xiàn)很難將我學(xué)到的算法應(yīng)用于小型數(shù)據(jù)集。機(jī)器學(xué)習(xí)中,你對(duì)哪個(gè)子領(lǐng)域最感興趣我對(duì)深度學(xué)習(xí)的各種進(jìn)步都很感興趣。 showImg(https://segmentfault.com/img/bVboxKz?w=800&h=600); 作者 Kaggle Team中文翻譯 MikaCDA 數(shù)據(jù)分析師...

    AnthonyHan 評(píng)論0 收藏0
  • (轉(zhuǎn))大數(shù)據(jù)競(jìng)賽平臺(tái)——Kaggle 入門(mén)

    摘要:是玩數(shù)據(jù)機(jī)器學(xué)習(xí)的開(kāi)發(fā)者們展示功力揚(yáng)名立萬(wàn)的江湖。上的參賽者將數(shù)據(jù)下載下來(lái),分析數(shù)據(jù),然后運(yùn)用機(jī)器學(xué)習(xí)數(shù)據(jù)挖掘等知識(shí),建立算法模型,解決問(wèn)題得出結(jié)果,最后將結(jié)果提交,如果提交的結(jié)果符合指標(biāo)要求并且在參賽者中排名第一,將獲得比賽豐厚的獎(jiǎng)金。 看到了一篇非常好的學(xué)習(xí)大數(shù)據(jù)挖掘?qū)W習(xí)的博文,所以特此轉(zhuǎn)載過(guò)來(lái),閑暇時(shí)可以用python練練手。Kaggle 是玩數(shù)據(jù)、機(jī)器學(xué)習(xí)的開(kāi)發(fā)者們展示功力、揚(yáng)...

    UnixAgain 評(píng)論0 收藏0
  • 我是如何在1天內(nèi)構(gòu)建一個(gè)深度學(xué)習(xí)模型并進(jìn)擊Kaggle比賽

    摘要:是為結(jié)果導(dǎo)向型人群開(kāi)設(shè)的深度學(xué)習(xí)在線課程。但是最關(guān)鍵的是,我想通過(guò)構(gòu)建簡(jiǎn)單的深度學(xué)習(xí)解決方案來(lái)實(shí)現(xiàn)理論和實(shí)踐的相結(jié)合。我的目標(biāo)是在一天結(jié)束前進(jìn)入排名的前。我的時(shí)間都用于學(xué)習(xí)庫(kù)組織數(shù)據(jù)和評(píng)估結(jié)果都是一些與深度學(xué)習(xí)無(wú)關(guān)的簡(jiǎn)單流程。 Fast.ai是Jeremy Howard為結(jié)果導(dǎo)向型人群開(kāi)設(shè)的深度學(xué)習(xí)在線課程。我讀過(guò)很多關(guān)于機(jī)器學(xué)習(xí)的書(shū),也參加過(guò)不少這方面的課程,但我認(rèn)為Fast.ai是迄今為...

    shinezejian 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<