注意:原文使用的pandas為0.17版本之前,在新版的pd一部分函式已被棄用或改寫,以下**已修改
seniorcitizen 老年人 partner 配偶 dependents 家屬 renure 職位 multiplelines 網際網路服務 sreamingtv 額… contract 合同 *****lessbilling 賬單 churn 流失
# -*- coding: utf-8 -*-
import numpy as np
import pandas as pd
import os
#輸出資料夾input 中儲存的檔名
print(os.listdir(r"d:\opensource\datasource\電信客戶流失資料"))
import matplotlib.pyplot as plt
import seaborn as sns
from pylab import rcparams
import matplotlib.cm as cm
import sklearn
from sklearn import preprocessing
from sklearn.preprocessing import labelencoder #偏碼轉換
from sklearn.preprocessing import standardscaler
from sklearn.model_selection import stratifiedshufflesplit
from sklearn.ensemble import randomforestclassifier #隨機森林
from sklearn.svm import svc,linearsvc #支援向量機
from sklearn.linear_model import logisticregression #邏輯回歸
from sklearn.neighbors import kneighborsclassifier #knn演算法
from sklearn.*****_bayes import gaussiannb #樸素貝葉斯
from sklearn.tree import decisiontreeclassifier #決策樹分類器
from xgboost import xgbclassifier
from catboost import catboostclassifier
from sklearn.ensemble import adaboostclassifier
from sklearn.ensemble import gradientboostingclassifier
from sklearn.metrics import classification_report, precision_score,recall_score,f1_score
from sklearn.metrics import confusion_matrix
from sklearn.model_selection import gridsearchcv
from sklearn.metrics import make_scorer
from sklearn.ensemble import votingclassifier
from sklearn.decomposition import pca
from sklearn.cluster import kmeans
from sklearn.metrics import silhouette_score #none
import warnings
warnings.filterwarnings('ignore')
#spyder&pycharm中可以#下段code
#僅有jynote時候才用 表示:呼叫matplotlib.pyplot的繪圖函式plot()進行繪圖的時候,或者生成乙個figure畫布的時候,可以直接在你的python console裡面生成影象
%matplotlib inline
#讀取資料檔案
telcom=pd.read_csv(r"d:\opensource\datasource\電信客戶流失資料\wa_fn-usec_-telco-customer-churn.csv")
# 使用熱地圖顯示相關係數
'''heatmap 使用熱地圖展示係數矩陣情況
linewidths 熱力圖矩陣之間的間隔大小
annot 設定是否顯示每個色塊的系數值
'''plt.figure(figsize=(20,16))
ax = sns.heatmap(corr,xticklabels=corr.columns,yticklabels=corr.columns,
linewidths=0.2,
cmap="ylgnbu",
annot=true)
plt.title('correlation between variables')
資料分析客戶忠誠度
一 根據客戶忠誠度劃分 忠誠度是一種行為,也是一種情緒。想要獲得客戶忠誠度的公司需要著重長遠發展而不僅侷限於乙個專案。主要強調交易式忠誠度和著重 鎖住 客戶而不是回饋客戶的專案並不可行。客戶忠誠是指消費者在進行購買決策時,多次表現出來的對某個企業產品和品牌有偏向性購買行為。忠誠的客戶是企業最有價值的...
資料分析之客戶物件 kmeans
資料分析的步驟 1.用pandas讀取資料 2.用data.describe 方法檢視資料的詳細 3.資料預處理 缺失值處理 data.dropna 如果資料量大,有缺失的資料直接刪除 data.fillna data.median inplace true 如果資料量小,有缺失值用平均值填充2.歸...
wireshark資料分析學習
wireshark資料分析 http frame 23 241 bytes on wire 1928 bits 241 bytes captured 1928 bits 23幀241個位元組 1928位 上線,捕獲了241位元組 1928位 encapsulation type ethernet 1...