airline

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

import seaborn as sns

%matplotlib inline

plt.rcParams['font.sans-serif']=['SimHei']

plt.rcParams['axes.unicode_minus']=False

df=pd.read_csv('C:/Users/xh/Desktop/air_data.csv')

df.info()

columns=df.columns

for i in columns:

? ? if df[i].isnull().sum()==0:

? ? ? ? pass

? ? else:

? ? ? ? print(i,df[i].isnull().sum())

df.loc[df['WORK_PROVINCE']=='北京','WORK_CITY'] = '北京'

df.loc[df['WORK_PROVINCE']=='上海','WORK_CITY'] = '上海'

df.loc[df['WORK_CITY']=='北京','WORK_PROCINCE'] = '北京'

df.loc[df['WORK_CITY']=='上海','WORK_PROCINCE'] = '上海'

df['WORK_CITY'].isnull().sum()

df=df.iloc[:,:-1]

df.describe()

df['FFP_DATE']=pd.to_datetime(df['FFP_DATE'])

df['MONTH']=df['FFP_DATE'].values.astype('datetime64[M]')

bins=[0,10,20,30,40,50,60,110]

df['AGE_CUT']=pd.cut(df['AGE'],bins=bins,labels=['10歲以下','10-20','20-30','30-40','40-50','50-60','60+'])

plt.figure(figsize=(12,8))

plt.subplot(221)

df.groupby('MONTH').MEMBER_NO.count().plot()

plt.subplot(222)

df.groupby('GENDER').MEMBER_NO.count().plot(kind='bar')

plt.subplot(223)

df.groupby('AGE_CUT').MEMBER_NO.count().plot(kind='bar')

plt.subplot(224)

df.groupby('FFP_TIER').MEMBER_NO.count().plot(kind='bar')

df[df['WORK_COUNTRY']=='CN']['WORK_COUNTRY'].count()/df['WORK_COUNTRY'].count()

member=df[['MEMBER_NO','FFP_TIER','SUM_YR_1','SUM_YR_2']]

member=member.dropna()

g=sns.FacetGrid(member,col='FFP_TIER')

g.map(plt.scatter,'MEMBER_NO','SUM_YR_1')

g=sns.FacetGrid(member,col='FFP_TIER')

g.map(plt.scatter,'MEMBER_NO','SUM_YR_2')

plt.figure(figsize=(5,5))

plt.subplot(131)

member[(member['FFP_TIER']==4)|(member['SUM_YR_2']>0)]['SUM_YR_2'].hist(bins=50)

plt.subplot(132)

member[(member['FFP_TIER']==5)|(member['SUM_YR_2']>0)]['SUM_YR_2'].hist(bins=50)

plt.subplot(133)

member[(member['FFP_TIER']==6)|(member['SUM_YR_2']>0)]['SUM_YR_2'].hist(bins=50)

df.groupby('FFP_TIER').FLIGHT_COUNT.mean()

df.groupby('FFP_TIER').AVG_INTERVAL.mean()

data1['AVG_INTERVAL'].mean()

ffp=member['FFP_TIER'].value_counts().index

for i in ffp:

? ? print(member[member['FFP_TIER']==i]['FFP_TIER'].count()/member['FFP_TIER'].count())

for i in ffp:

? ? print(member[member['FFP_TIER']==i]['SUM_YR_2'].sum()/member['SUM_YR_2'].sum())#

memb=member.groupby('MEMBER_NO').SUM_YR_2.sum().sort_values().reset_index()

memb['CUMSUM']=memb.SUM_YR_2.cumsum()

memb.tail()

total=max(memb.CUMSUM)

memb['P']=memb['CUMSUM']/total

memb.P.plot()

sns.set_style('darkgrid')

plt.figure(figsize=(25,15))

data=df.dropna()

column=data.columns.tolist()

corr=data[column].corr()

zero=np.zeros_like(corr,dtype=np.bool)

zero[np.triu_indices_from(zero)]=True

sns.heatmap(corr,mask=zero,square=True,annot=True,fmt='.2f')

data1=df.dropna(subset=['SUM'])

data1=data1[data1['SUM']>0]

data=data1[['LOAD_TIME','FFP_DATE','LAST_TO_END','FLIGHT_COUNT','SEG_KM_SUM','avg_discount']]

data['LOAD_TIME']=pd.to_datetime(data['LOAD_TIME'])

data['L']=(data['LOAD_TIME']-data['FFP_DATE'])/np.timedelta64(1,'M')

data['R']=data['LAST_TO_END']

data['F']=data['FLIGHT_COUNT']

data['M']=data['SEG_KM_SUM']

data['C']=data['avg_discount']

da=data.iloc[:,6:]

da['L']=round(da['L'],2)

da['L']=da['L'].astype('int')

da=(da-da.mean(axis=0))/da.std(axis=0)

da=np.array(da)

from sklearn.cluster import KMeans

k=5

kmean=KMeans(n_clusters=k)

kmean.fit(da)

kmean.cluster_centers_#查看聚類中心

print(kmean.labels_)

label=list(kmean.labels_)

label=pd.value_counts(label)

pd.value_counts(label).plot(kind='bar',colors=color)

k=5

center=kmean.cluster_centers_

color=['r','g','b','c','y']

x=[1,2,3,4,5]

for i in range(5):

? ? plt.plot(x,center[i],label='cluster'+str(i)+'? '+str(label[i]),color=color[i],marker='o')

plt.xlabel('LRFMC')

plt.legend()

plt.show()

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌腰埂,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件尾膊,死亡現(xiàn)場(chǎng)離奇詭異挺尾,居然都是意外死亡变勇,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門既荚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)稚失,“玉大人,你說(shuō)我怎么就攤上這事恰聘【涓鳎” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵憨琳,是天一觀的道長(zhǎng)诫钓。 經(jīng)常有香客問(wèn)我,道長(zhǎng)篙螟,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任问拘,我火速辦了婚禮遍略,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘骤坐。我一直安慰自己绪杏,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布纽绍。 她就那樣靜靜地躺著蕾久,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拌夏。 梳的紋絲不亂的頭發(fā)上僧著,一...
    開(kāi)封第一講書(shū)人閱讀 51,155評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音障簿,去河邊找鬼盹愚。 笑死,一個(gè)胖子當(dāng)著我的面吹牛站故,可吹牛的內(nèi)容都是我干的皆怕。 我是一名探鬼主播,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼西篓,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼愈腾!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起岂津,我...
    開(kāi)封第一講書(shū)人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤虱黄,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后寸爆,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體礁鲁,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡盐欺,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了仅醇。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冗美。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖析二,靈堂內(nèi)的尸體忽然破棺而出粉洼,到底是詐尸還是另有隱情,我是刑警寧澤叶摄,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布属韧,位于F島的核電站,受9級(jí)特大地震影響蛤吓,放射性物質(zhì)發(fā)生泄漏宵喂。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一会傲、第九天 我趴在偏房一處隱蔽的房頂上張望锅棕。 院中可真熱鬧,春花似錦淌山、人聲如沸裸燎。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)德绿。三九已至,卻和暖如春退渗,著一層夾襖步出監(jiān)牢的瞬間移稳,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工氓辣, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留秒裕,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓钞啸,卻偏偏與公主長(zhǎng)得像几蜻,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子体斩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

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

  • 1.背景與挖掘目標(biāo) 1.1背景 航空公司業(yè)務(wù)競(jìng)爭(zhēng)激烈梭稚,從產(chǎn)品中心轉(zhuǎn)化為客戶中心。 針對(duì)不同類型客戶絮吵,進(jìn)行精準(zhǔn)營(yíng)銷弧烤,...
    peiyang閱讀 3,127評(píng)論 0 3
  • pyspark.sql模塊 模塊上下文 Spark SQL和DataFrames的重要類: pyspark.sql...
    mpro閱讀 9,451評(píng)論 0 13
  • # -*- coding: utf-8 -*- from __future__ import division f...
    小豆角lch閱讀 1,293評(píng)論 0 0
  • # -*- coding: utf-8 -*- from __future__ import division f...
    小豆角lch閱讀 1,453評(píng)論 0 1
  • 天空中照舊籠罩著一層灰暗,沒(méi)有過(guò)多的生機(jī)蹬敲,卻也沒(méi)有一點(diǎn)威逼的味道暇昂。 安靜地躺坐在涼椅上莺戒,感受著秋日晨風(fēng)...
    簡(jiǎn)致物語(yǔ)閱讀 393評(píng)論 0 0