一、項(xiàng)目描述
該項(xiàng)目為一個(gè)咨詢項(xiàng)目,客戶為手機(jī)品牌商,主要目的是通過數(shù)據(jù)分析幫助制客戶制定品牌策略策略、產(chǎn)品策略和價(jià)格策略,助力客戶品牌的成長(zhǎng)和銷量的增長(zhǎng)。由于涉及到一些商業(yè)上的保密,所以本文最終公開的策略偏宏觀。
電商平臺(tái)為我們提供了大量的銷售數(shù)據(jù),以及消費(fèi)者的反饋數(shù)據(jù),從電商平臺(tái)入手我們能夠同時(shí)了解到市場(chǎng)、產(chǎn)品和消費(fèi)者,考慮到數(shù)據(jù)量以及用戶群體的豐富性,我們選擇了淘寶電商的數(shù)據(jù)作為我們的數(shù)據(jù)源。在項(xiàng)目中同時(shí)涉及到市場(chǎng),產(chǎn)品和消費(fèi)者,所以我們的思路是同時(shí)獲取到淘寶電商平臺(tái)上手機(jī)的銷售數(shù)據(jù)以及評(píng)論數(shù)據(jù),然后通過數(shù)據(jù)挖掘,從評(píng)論中挖掘出產(chǎn)品的屬性特征和用戶特征并進(jìn)行關(guān)聯(lián),從而建立起市場(chǎng)、產(chǎn)品和消費(fèi)者三者直接的聯(lián)系,然后進(jìn)行數(shù)據(jù)分析,為我們幫助客戶制定品牌、產(chǎn)品以及價(jià)格策略提供依據(jù)。
二、數(shù)據(jù)采集
數(shù)據(jù)的采集上我們用python通過爬蟲的方式進(jìn)行采集,思路為先模擬登錄淘寶,然后再通過關(guān)鍵字進(jìn)行搜索,搜索后得到商品的列表,通過商品的列表信息,我們可以得到商品的id信息,得到id后我們通過把不同商品的id傳遞給不同的線程,通過多線程的方式同時(shí)爬取商品的銷售數(shù)據(jù),評(píng)論數(shù)據(jù)和評(píng)分?jǐn)?shù)據(jù)。
這里不再進(jìn)行詳細(xì)的說明,有興趣的朋友可以參考具體代碼,鏈接(包括數(shù)據(jù))如下
https://github.com/qmqqyb/-/tree/master?github.com/qmqqyb/-/tree/master
由于評(píng)論的文件太大,沒辦法上傳到github上,所以如果有朋友對(duì)評(píng)論數(shù)據(jù)感興趣的可以私信我。
三、數(shù)據(jù)挖掘
數(shù)據(jù)挖掘這一部分相對(duì)來說比較困難一些,我們主要是對(duì)評(píng)論數(shù)據(jù)進(jìn)行了挖掘,挖掘兩個(gè)方面的信息,一個(gè)方面是評(píng)論的標(biāo)簽(產(chǎn)品屬性+評(píng)論觀點(diǎn)),一部分是用戶分組信息,挖掘這兩部分信息的目的主要用這兩部分?jǐn)?shù)據(jù)建立消費(fèi)者的用戶畫像,同時(shí)把消費(fèi)者和市場(chǎng)和產(chǎn)品關(guān)聯(lián)到一起,把評(píng)論信息結(jié)構(gòu)化數(shù)值化,為后面的數(shù)據(jù)分析做準(zhǔn)備。
在數(shù)據(jù)挖掘部分主要用到的一些技術(shù)和工具是:
哈工大ltp分詞、詞性標(biāo)注、依存句法分析、命名實(shí)體識(shí)別、詞義角色標(biāo)注;
Word2vect的gensim模塊進(jìn)行詞向量計(jì)算;
k_mens聚類,得到用戶分組和產(chǎn)品的屬性,并為后面產(chǎn)品評(píng)論特征和用戶特征做歸一化做準(zhǔn)備
具體大家可以參考如下代碼:
https://github.com/qmqqyb/comment_data_mining/tree/master?github.com/qmqqyb/comment_data_mining/tree/master
在鏈接的代碼中,涉及到的評(píng)論文本由于文件過大,暫時(shí)無法上傳,感興趣的朋友可以私信我。
四、數(shù)據(jù)分析
經(jīng)過數(shù)據(jù)的挖掘和一些數(shù)據(jù)的處理,我們得到4491款不同手機(jī)數(shù)據(jù)信息,數(shù)據(jù)包含61個(gè)字段
(1)數(shù)據(jù)的理解
①首先導(dǎo)入數(shù)據(jù),查看數(shù)據(jù)的基本信息
df = pd.read_csv('F:\pycharm project data\\taobao\phone\\final_goods_info.csv', encoding='utf-8', index_col=0)
print(df.columns)
這里我們可以把字段氛圍四類
第一類字段為一些基本的信息,主要包括以下
itemid:商品的id
category:商品的分類
sellerid:店鋪id
location:發(fā)貨地址
comment_count:評(píng)論數(shù)量
price:價(jià)格
sale_amount:銷售量
title:商品標(biāo)題,標(biāo)題中包括包含著品牌信息
sale_volume:產(chǎn)品的銷售額
第二類字段為產(chǎn)品的評(píng)論信息,主要包含電池、屏幕、音質(zhì)等,其中在每個(gè)屬性下分為下標(biāo)0和1.0表示negative評(píng)論,1表示positive評(píng)論,例如:
電池_0:該字段就表示電池負(fù)面評(píng)價(jià)字段,對(duì)應(yīng)的數(shù)值表示評(píng)論中出現(xiàn)該標(biāo)簽的頻數(shù)
電池_1:表示電池方面的正面評(píng)價(jià),對(duì)應(yīng)的數(shù)值表示評(píng)論中出現(xiàn)該標(biāo)簽的頻數(shù)。
第三類字段為用戶信息分字段,用戶信息字段根據(jù)年齡和角色,兩個(gè)字段
年齡分組中:主要包含兒童、青年、中年和老年人這些值
角色分組中:主要包含學(xué)生,爸爸,媽媽、女朋友、男朋友這些信息
第四類字段只包含一個(gè)字段,主要是用戶對(duì)該產(chǎn)品的評(píng)分
score:用戶對(duì)商品的評(píng)分,5分為滿分
(2)數(shù)據(jù)的清洗以及數(shù)據(jù)的處理
①缺失值的填充
對(duì)于數(shù)值型的數(shù)據(jù),缺失值主要集中在評(píng)論頻次上,評(píng)論頻次的缺失主要由于該商品沒有涉及到該品論標(biāo)簽,所以我們可以直接填充為0.這樣也方便我們后續(xù)的數(shù)據(jù)類型的轉(zhuǎn)化;
df.fillna(0. inplace=True)
然后我們需要將頻次的數(shù)據(jù)轉(zhuǎn)化為以及其他一些有實(shí)際意義的數(shù)字轉(zhuǎn)化為int型
cols = ['itemid', 'category', 'sellerId', 'isTmall', 'comment_count', '系統(tǒng)很強(qiáng)大', '手機(jī)不錯(cuò)', '用得久', '手機(jī)一般', '電池_1', '電池_0', '信號(hào)_1', '信號(hào)_0', '性價(jià)比_1', '功能_1', '功能_0', '音質(zhì)_1', '音質(zhì)_0', '屏幕_1', '屏幕_0', '正品_1', '軟件_1', '軟件_0', '按鍵_1', '按鍵_0', '外觀_1', '外觀_0', '拍照_1', '拍照_0', '手感_1', '死機(jī)_1', '配件_1', '配件_0', '包裝_1', '贈(zèng)品_1', '贈(zèng)品_0', '物流_1', '物流_0', '視頻_1', '發(fā)熱_1', '發(fā)熱_0', '輕便_1', '操作_1', '性價(jià)比_0', '正品_0', '手感_0', '死機(jī)_0', '包裝_0', '總體_1', '總體_0', '視頻_0', '輕便_0', '操作_0']
for col in cols:
df[col] = df[col].astype('int64')
對(duì)于用戶分組的信息,如果發(fā)生缺失則代表,該商品中沒有提及到手機(jī)適合的用戶對(duì)象,所以我們用空值進(jìn)行填充
df.loc[df['年齡分組'] == 0. ['年齡分組']] = ''
df.loc[df['角色分組'] == 0. ['角色分組']] = ''
②異常值的處理
首先我們來看價(jià)格,我們做一各品牌手機(jī)價(jià)格的箱線圖:
我們可以發(fā)現(xiàn),榮耀手機(jī)的價(jià)格接近100000.導(dǎo)致箱線圖其他數(shù)據(jù)在圖中直接沒有顯示出來,但是我們查看其銷售量卻為0.所以這類數(shù)據(jù)是存在異常的,我們使用分位數(shù)的方法來去除異常數(shù)據(jù):
# 用分位數(shù)法去除異常值
high_q = df['price'].quantile(q=0.75)# 上四分位數(shù)
low_q = df['price'].quantile(q=0.25)# 下四分位數(shù)
interval = (high_q - low_q)# 分位數(shù)間隔
df = df.loc[(df['price'] > low_q - 3*interval) & (df['price'] < high_q + 3*interval), ]
去除異常數(shù)據(jù)之后,我們?cè)賮砜匆幌赂髌放剖謾C(jī)的價(jià)格情況:
從上圖中可以看出,進(jìn)行處理以后手機(jī)的價(jià)格基本位于11000元以下,符合我們的預(yù)期。
③數(shù)據(jù)分箱
為了方便我們后續(xù)的研究,我們對(duì)價(jià)格數(shù)據(jù)進(jìn)行分箱處理
# 對(duì)價(jià)格進(jìn)行分箱處理
labels = list(np.arange(60))
counts, bins_edge = np.histogram(df['price'], bins=60)
df['分組'] = pd.cut(df['price'], bins=bins_edge, labels=labels, include_lowest=True)
price_list = []
for bin_price in bins_edge:
price_list.append(round(bin_price, 1))
df['分組'] = pd.cut(df['price'], bins=bins_edge, labels=labels, include_lowest=True)
plt.figure(figsize=(20. 10))
sns.barplot(x=price_list[1: 61], y=counts)
plt.xticks(rotation=90)
plt.ylabel('count')
plt.title('price')
plt.show()
結(jié)果如下:
注意這里的橫軸表示每個(gè)價(jià)格小區(qū)間,如175.0代表0-175的價(jià)格,縱軸表示位于該價(jià)格區(qū)間中的商品數(shù)量。為了在后面表示方便,我們用0-59的標(biāo)簽來代表每個(gè)價(jià)格小區(qū)間。
(3)市場(chǎng)分析
首先根據(jù)價(jià)格分組我們可以得到價(jià)格和銷量,價(jià)格和銷售額之間的關(guān)系,如下:
# 按照價(jià)格分組數(shù)據(jù)進(jìn)行切分
gp_df = df.groupby('分組')
# 價(jià)格和銷量的曲線圖
g_sales_amount = gp_df['sales_amount'].agg(sum)
plt.figure(figsize=(20. 12))
sns.pointplot(x=np.arange(60), y=g_sales_amount.values[0: 60], color='r')
plt.title('price-sales_amount')
plt.xlabel('price')
plt.xticks(rotation=90)
plt.ylabel('sales_amount')
plt.show()
# 價(jià)格和銷售量的關(guān)系
g_sales_volume = gp_df['sales_volume'].agg(sum)
plt.figure(figsize=(20. 12))
sns.pointplot(x=np.arange(60), y=g_sales_volume.values[0: 60], color='r')
plt.title('price-sales_volume')
plt.xlabel('price')
plt.xticks(rotation=90)
plt.ylabel('sales_volume')
plt.show()
# print(bins_edge)
對(duì)比價(jià)格和銷量,價(jià)格和銷售額的的關(guān)系,我們可以得出以下信息:
①價(jià)格和銷售額以及銷售量的關(guān)系都呈現(xiàn)出復(fù)雜的脈沖關(guān)系;
②在價(jià)格和銷量的關(guān)系中出現(xiàn)了三個(gè)顯著的波峰位置,一個(gè)位置是0.對(duì)應(yīng)0-175元的價(jià)格區(qū)間;一個(gè)位置是6.對(duì)應(yīng)1049.9-1224.9元的價(jià)格區(qū)間;一個(gè)是31的位置,對(duì)應(yīng)的是5424.5-5599.5元的價(jià)格區(qū)間;
③在價(jià)格和銷售額的關(guān)系中出現(xiàn)了兩個(gè)最顯著的波峰位置,一個(gè)是6對(duì)應(yīng)1049.9-1224.9元的價(jià)格區(qū)間,在價(jià)格低于1224.9這個(gè)區(qū)間內(nèi),價(jià)格和銷售額呈現(xiàn)出正相關(guān)的關(guān)系;另一個(gè)是31的位置,對(duì)應(yīng)的是5424.5-5599.5元的價(jià)格區(qū)間,在價(jià)格高于5599.5這個(gè)價(jià)位的時(shí)候銷售額明顯急劇下降。
④在6-31的位置區(qū)間內(nèi)不管是銷售量還是銷售額都呈現(xiàn)出反復(fù)脈沖的關(guān)系。
所以我們發(fā)現(xiàn)銷量和銷售額隨著價(jià)格的變動(dòng)情況只有在0這個(gè)位置上差異非常大,我們把這一部分產(chǎn)品篩選出來查看一下,發(fā)現(xiàn)這是因?yàn)樘幱?-175這個(gè)價(jià)位的有一些老年機(jī)和兒童手表電話賣的特別火,但是由于價(jià)格較低,其本身銷售額和手機(jī)比還是差很多,現(xiàn)在我們把這一部分的數(shù)據(jù)剔除得到如下關(guān)系:
# 舍去價(jià)格位于0-175的價(jià)位之間的產(chǎn)品
df = df.loc[df['分組'] != 0. ]
# 按照價(jià)格分組數(shù)據(jù)進(jìn)行切分
gp_df = df.groupby('分組')
# 價(jià)格和銷量的曲線圖
g_sales_amount = gp_df['sales_amount'].agg(sum)
plt.figure(figsize=(20. 12))
sns.pointplot(x=np.arange(60), y=g_sales_amount.values[0: 60], color='r')
plt.title('price-sales_amount')
plt.xlabel('price')
plt.xticks(rotation=90)
plt.ylabel('sales_amount')
plt.show()
# 價(jià)格和銷售量的關(guān)系
g_sales_volume = gp_df['sales_volume'].agg(sum)
plt.figure(figsize=(20. 12))
sns.pointplot(x=np.arange(60), y=g_sales_volume.values[0: 60], color='r')
plt.title('price-sales_volume')
plt.xlabel('price')
plt.xticks(rotation=90)
plt.ylabel('sales_volume')
plt.show()
# print(bins_edge)
我們現(xiàn)在可以發(fā)現(xiàn),當(dāng)剔除了0-175之間特殊消費(fèi)的影響后,銷售額和銷售量隨價(jià)格波動(dòng)的具有非常高的一致性,仍然有兩個(gè)關(guān)鍵的位置,一個(gè)位置是6.對(duì)應(yīng)1049.9-1224.9元的價(jià)格區(qū)間;一個(gè)是31的位置,對(duì)應(yīng)的是5424.5-5599.5元的價(jià)格區(qū)間。價(jià)格低于1224.9時(shí),銷量和銷售額隨著價(jià)格的升高而升高;當(dāng)價(jià)格位于1224.9-5424.5元區(qū)間內(nèi)時(shí),價(jià)格和銷售量和銷售額之間都呈現(xiàn)出反復(fù)脈沖的關(guān)系;當(dāng)價(jià)格為5424.5-5599.5元區(qū)間內(nèi)的時(shí)候銷售額和銷售量都出現(xiàn)顯著的波峰;當(dāng)價(jià)格高于5599.5元的時(shí)候,銷售量和銷售額都隨著價(jià)格升高急劇下降。
所以按照這樣的關(guān)系,我們可以把手機(jī)市場(chǎng)切分了三個(gè)市場(chǎng),一個(gè)是1225元以下,我們稱之為低端市場(chǎng),一個(gè)是1225-5425元之間,我們稱之為中端市場(chǎng);一個(gè)是5425元以上,我們稱之為高端市場(chǎng)。
根據(jù)市場(chǎng)分析,我們首先來看一下各個(gè)市場(chǎng)的銷售額和銷售量的分布情況:
# 總體市場(chǎng)分析
df['市場(chǎng)分組'] = ''
df.loc[df['分組'].isin(list(np.arange(0. 7))), ['市場(chǎng)分組']] = 'low_market'
df.loc[df['分組'].isin(list(np.arange(7. 31))), ['市場(chǎng)分組']] = 'medium_market'
df.loc[df['分組'].isin(list(np.arange(31. 60))), ['市場(chǎng)分組']] = 'high_market'
print(df.head(100))
market_a_df = df.groupby('市場(chǎng)分組')['sales_amount'].sum().sort_values(ascending=False)
market_v_df = df.groupby('市場(chǎng)分組')['sales_volume'].sum().sort_values(ascending=False)
# 市場(chǎng)銷售額和銷售量分析
plt.figure(figsize=(10. 10))
plt.pie(market_a_df, labels=market_a_df.index, autopct="%1.1f%%")
plt.title('market_amount')
plt.show()
plt.figure(figsize=(10. 10))
plt.pie(market_v_df, labels=market_v_df.index, autopct="%1.1f%%")
plt.title('market_volume')
plt.show()
對(duì)比銷售額和銷售量在各個(gè)市場(chǎng)中的占比情況,我們可以得到以下信息:
低端市場(chǎng)中的銷售量占優(yōu)勢(shì),但是由于價(jià)格過低,在營(yíng)收方面占比最少,而中端市場(chǎng)依靠42.6%的市場(chǎng)銷量,創(chuàng)造了62.7%的市場(chǎng)營(yíng)收,高端市場(chǎng)依靠6.9%的市場(chǎng)銷量,創(chuàng)造了23.0%的市場(chǎng)營(yíng)收。
主要原因是低端市場(chǎng)的價(jià)格太低,雖然在銷量上占優(yōu),但是在營(yíng)收上遠(yuǎn)遠(yuǎn)低于中端市場(chǎng)和高端市場(chǎng)中。但是我們重點(diǎn)應(yīng)該關(guān)注的是低端市場(chǎng)高銷量背后,是否隱藏著商業(yè)機(jī)會(huì)?
針對(duì)這個(gè)問題,我們來看一下,低端市場(chǎng)中的用戶群體:
# 低端市場(chǎng)用戶分布研究
low_df = df.loc[df['分組'].isin(list(np.arange(0. 7))), ]
g_low_df = low_df.groupby('年齡分組')['sales_amount'].sum().sort_values(ascending=False)
# 低端市場(chǎng)的用戶分布
plt.figure(figsize=(10. 10))
plt.pie(g_low_df, labels=g_low_df.index, autopct="%1.1f%%")
plt.title('low_market_user')
plt.show()
在上面的圖中,左邊是低端市場(chǎng)中用戶按照年齡分類后的分布情況,右邊是我國(guó)目前的人口結(jié)構(gòu)中的年齡分布情況。對(duì)比我們可以發(fā)現(xiàn)在低端市場(chǎng)中,主要是老年人用戶群體,占比超過53.3%,這非常符合我們的預(yù)期。但是我們也要注意到,按照低端市場(chǎng)在總市場(chǎng)占比50.5%,低端市場(chǎng)的用戶中年人占比33.9%,中年人在我國(guó)人口結(jié)構(gòu)中占比71.2%來計(jì)算,這部分中年人用戶是一個(gè)龐大的基數(shù)。那這部分中年人的消費(fèi)為什么會(huì)在低端市場(chǎng)?
針對(duì)這個(gè)問題,我們來看一下中年人用戶的一些消費(fèi)偏好:
# 低端市場(chǎng)中年人用戶畫像研究
cols = ['系統(tǒng)很強(qiáng)大', '手機(jī)不錯(cuò)', '用得久', '手機(jī)一般', '電池_1', '電池_0', '信號(hào)_1', '信號(hào)_0', '性價(jià)比_1', '功能_1', '功能_0', '音質(zhì)_1', '音質(zhì)_0', '屏幕_1', '屏幕_0', '正品_1', '軟件_1', '軟件_0', '按鍵_1', '按鍵_0', '外觀_1', '外觀_0', '拍照_1', '拍照_0', '手感_1', '死機(jī)_1', '配件_1', '配件_0', '包裝_1', '贈(zèng)品_1', '贈(zèng)品_0', '物流_1', '物流_0', '視頻_1', '發(fā)熱_1', '發(fā)熱_0', '輕便_1', '操作_1', '性價(jià)比_0', '正品_0', '手感_0', '死機(jī)_0', '包裝_0', '總體_1', '總體_0', '視頻_0', '輕便_0', '操作_0']
# 進(jìn)行用戶分組分析
g_low_um_df = low_df.loc[df['年齡分組'] == '中年人', cols].sum(axis=0).sort_values(ascending=False)
# 中年人用戶關(guān)注性能分析
plt.figure(figsize=(10. 10))
plt.pie(g_low_um_df[0: 10], labels=g_low_um_df.index[0: 10], autopct="%1.1f%%")
plt.title('low_muser_point')
plt.show()
#中年人品牌分析
bm_df = low_df.loc[df['年齡分組'] == '中年人']
g_low_bm_df = bm_df.groupby('brand')['sales_amount'].sum().sort_values(ascending=False)
# 中年人用戶品牌分析
plt.figure(figsize=(10. 10))
plt.pie(g_low_bm_df[0: 8], labels=g_low_bm_df.index[0: 8], autopct="%1.1f%%")
plt.title('low_muser_brand')
plt.show()
在上面的圖中,左邊是中年人用戶對(duì)手機(jī)某方面屬性關(guān)注的占比情況,右邊為中年人用戶對(duì)品牌的偏好??梢园l(fā)現(xiàn)中年人用戶更為關(guān)注手機(jī)的整體性能,以及外觀方面的屬性,更青睞于榮耀,華為和小米三個(gè)品牌。(注意這里把榮耀和華為拆開是為了后面的對(duì)比方便)
現(xiàn)在我們來看一下低端市場(chǎng)的用戶畫像:
# 低端市場(chǎng)用戶畫像研究
cols = ['系統(tǒng)很強(qiáng)大', '手機(jī)不錯(cuò)', '用得久', '手機(jī)一般', '電池_1', '電池_0', '信號(hào)_1', '信號(hào)_0', '性價(jià)比_1', '功能_1', '功能_0', '音質(zhì)_1', '音質(zhì)_0', '屏幕_1', '屏幕_0', '正品_1', '軟件_1', '軟件_0', '按鍵_1', '按鍵_0', '外觀_1', '外觀_0', '拍照_1', '拍照_0', '手感_1', '死機(jī)_1', '配件_1', '配件_0', '包裝_1', '贈(zèng)品_1', '贈(zèng)品_0', '物流_1', '物流_0', '視頻_1', '發(fā)熱_1', '發(fā)熱_0', '輕便_1', '操作_1', '性價(jià)比_0', '正品_0', '手感_0', '死機(jī)_0', '包裝_0', '總體_1', '總體_0', '視頻_0', '輕便_0', '操作_0']
# 進(jìn)行用戶分組分析
g_low_u_df = low_df[cols].sum(axis=0).sort_values(ascending=False)
# 低端市場(chǎng)用戶關(guān)注性能分析
plt.figure(figsize=(10. 10))
plt.pie(g_low_u_df[0: 10], labels=g_low_u_df.index[0: 10], autopct="%1.1f%%")
plt.title('low_user_point')
plt.show()
#低端市場(chǎng)品牌分析
g_low_m_df = low_df.groupby('brand')['sales_amount'].sum().sort_values(ascending=False)
# 中年人用戶品牌分析
plt.figure(figsize=(10. 10))
plt.pie(g_low_m_df[0: 8], labels=g_low_m_df.index[0: 8], autopct="%1.1f%%")
plt.title('low_user_brand')
plt.show()
我們可以發(fā)現(xiàn)低端市場(chǎng)中的用戶畫像和低端市場(chǎng)中中年人的用戶畫像差距非常大,在手機(jī)的屬性方面,低端市場(chǎng)的用戶更為關(guān)注的是手機(jī)的音質(zhì)、功能(手機(jī)的基本功能,例如電打電話、上網(wǎng)等)方面的屬性,這與低端市場(chǎng)中老年人占比較多有關(guān);品牌的偏好上,低端市場(chǎng)的用戶出現(xiàn)了一些不知名的小品牌,榮耀也占一定的比例。
現(xiàn)在我們來看一些中端市場(chǎng)的用戶畫像:
# 中端市場(chǎng)用戶畫像研究
cols = ['系統(tǒng)很強(qiáng)大', '手機(jī)不錯(cuò)', '用得久', '手機(jī)一般', '電池_1', '電池_0', '信號(hào)_1', '信號(hào)_0', '性價(jià)比_1', '功能_1', '功能_0', '音質(zhì)_1', '音質(zhì)_0', '屏幕_1', '屏幕_0', '正品_1', '軟件_1', '軟件_0', '按鍵_1', '按鍵_0', '外觀_1', '外觀_0', '拍照_1', '拍照_0', '手感_1', '死機(jī)_1', '配件_1', '配件_0', '包裝_1', '贈(zèng)品_1', '贈(zèng)品_0', '物流_1', '物流_0', '視頻_1', '發(fā)熱_1', '發(fā)熱_0', '輕便_1', '操作_1', '性價(jià)比_0', '正品_0', '手感_0', '死機(jī)_0', '包裝_0', '總體_1', '總體_0', '視頻_0', '輕便_0', '操作_0']
# 進(jìn)行用戶分組分析
medium_df = df.loc[df['分組'].isin(list(np.arange(7. 31))), ]
g_medium_u_df = medium_df[cols].sum(axis=0).sort_values(ascending=False)
# 低端市場(chǎng)用戶關(guān)注性能分析
plt.figure(figsize=(10. 10))
plt.pie(g_medium_u_df[0: 10], labels=g_medium_u_df.index[0: 10], autopct="%1.1f%%")
plt.title('medium_user_point')
plt.show()
#中端市場(chǎng)品牌分析
g_medium_m_df = medium_df.groupby('brand')['sales_amount'].sum().sort_values(ascending=False)
# 中年人用戶品牌分析
plt.figure(figsize=(10. 10))
plt.pie(g_medium_m_df[0: 8], labels=g_medium_m_df.index[0: 8], autopct="%1.1f%%")
plt.title('medium_user_brand')
plt.show()
對(duì)比中端市場(chǎng)用戶的畫像和低端市場(chǎng)中中年人的用戶畫像,可以發(fā)現(xiàn)在手機(jī)的屬性方面,中端市場(chǎng)用戶和低端市場(chǎng)中年人的用戶關(guān)注點(diǎn)近似,都是產(chǎn)品的功能(手機(jī)的基本功能,例如電打電話、上網(wǎng)等)、外觀、電池、拍照等;在品牌偏好上蘋果的價(jià)位較高,沒有千元機(jī),所以低端市場(chǎng)的中年人用戶沒有選擇權(quán),但對(duì)華為、榮耀、小米幾個(gè)品牌商認(rèn)同度接近。
通過中年人用戶的對(duì)比我們發(fā)現(xiàn)一下幾點(diǎn)信息:
①低端市場(chǎng)中中年人用戶占比較大,按照低端市場(chǎng)銷量占比和中年人人口占比來計(jì)算,這是一個(gè)龐大的消費(fèi)群體;
②單獨(dú)分析低端市場(chǎng)中年人用戶的畫像,發(fā)現(xiàn)其和低端市場(chǎng)整體用戶畫像差異較大而和中端市場(chǎng)整體用戶畫像差異較??;
③基于以上兩點(diǎn),我們判斷,低端市場(chǎng)中的這一部分中年人的消費(fèi)需求理應(yīng)在中端市場(chǎng),但是由于某種原因使得他們只能選擇低端市場(chǎng);
④中端市場(chǎng)和低端市場(chǎng)最顯著的區(qū)別就是低端市場(chǎng)的整體價(jià)格比中端市場(chǎng)要低很多,所以我們可以判斷低端市場(chǎng)中中年人這個(gè)群體的消費(fèi)需求整體上受到收入上的抑制,并沒有充分釋放出來,在收入保持穩(wěn)定增長(zhǎng)的前提下,未來中端市場(chǎng)的存在繼續(xù)壯大發(fā)展的潛力。
(4)中端市場(chǎng)產(chǎn)品和價(jià)格分析
在了解了中端市場(chǎng)存在著巨大的發(fā)展?jié)摿?,如何壯大自己品牌在中端市?chǎng)的競(jìng)爭(zhēng)力呢?
針對(duì)這個(gè)問題,我們首先再來看一下中端市場(chǎng)價(jià)格和銷售量以及銷售額的關(guān)系:
# 中端市場(chǎng)分析
gp_df = df.groupby('分組')
# 價(jià)格和銷量的曲線圖
g_sales_amount = gp_df['sales_amount'].agg(sum)
plt.figure(figsize=(20. 12))
sns.pointplot(x=np.arange(7. 31), y=g_sales_amount.values[7: 31], color='r')
plt.title('price-sales_amount')
plt.xlabel('price')
plt.xticks(rotation=90)
plt.ylabel('medium_sales_amount')
plt.show()
# 價(jià)格和銷售額的關(guān)系
g_sales_volume = gp_df['sales_volume'].agg(sum)
plt.figure(figsize=(20. 12))
sns.pointplot(x=np.arange(7. 31), y=g_sales_volume.values[7: 31], color='r')
plt.title('price-sales_volume')
plt.xlabel('price')
plt.xticks(rotation=90)
plt.ylabel('medium_sales_volume')
plt.show()
可以發(fā)現(xiàn)中端市場(chǎng)的價(jià)格和銷售額以及銷售量都存在著反復(fù)脈沖的復(fù)雜關(guān)系,那為什么會(huì)呈現(xiàn)出這種關(guān)系呢?
我們來觀察一下中端市場(chǎng)的消費(fèi)者群體:
# 中端市場(chǎng)用戶研究
g_medium_df = medium_df.groupby('年齡分組')['sales_amount'].sum().sort_values(ascending=False)
# 低端市場(chǎng)的用戶分布
plt.figure(figsize=(10. 10))
plt.pie(g_medium_df, labels=g_medium_df.index, autopct="%1.1f%%")
plt.title('medium_market_user')
plt.show()
上圖是中端市場(chǎng)用戶的一個(gè)分布圖,由于我們?cè)趶脑u(píng)論中挖掘用戶信息的時(shí)候,主要是挖掘在評(píng)論中提及到的對(duì)象,比如某條評(píng)論中可能會(huì)提及到手機(jī)適合老人使用,那么我們就可以挖掘到老人這個(gè)用戶信息,但是對(duì)于大部分給自己買手機(jī)的消費(fèi)者來說,不會(huì)表明自己的身份,只會(huì)對(duì)產(chǎn)品本身加以評(píng)論,所以圖中缺失的80.1%的用戶信息主要集中在中青年,有獨(dú)立的消費(fèi)能力的人群中。
對(duì)于以中青年為主的中端市場(chǎng),消費(fèi)者有什么樣的消費(fèi)偏好呢:
我們來看中端市場(chǎng)的用戶畫像:
對(duì)比以上兩個(gè)圖,我們可以得到以下幾點(diǎn)信息:
①中端市場(chǎng)的用戶除了關(guān)注手機(jī)整體性能這種通用屬性外,更加關(guān)注手機(jī)的外觀、拍照、電池、是否正品等方面的屬性;
②在品牌商中端市場(chǎng)的品牌偏好呈現(xiàn)多元化,華為、榮耀、vivo、小米、oppo等主要的品牌都占有一定的市場(chǎng)份額;
我們可以看到中端市場(chǎng)的用戶不管是在產(chǎn)品屬性還是品牌上,消費(fèi)需求非常的多元化,這就很好地解釋了為什么為什么中端市場(chǎng)在會(huì)出現(xiàn)反復(fù)脈沖的關(guān)系。由于用戶消費(fèi)需求的多元化,所以品牌商為了滿足不同消費(fèi)群體的個(gè)性化需求,利用產(chǎn)品設(shè)計(jì)和價(jià)格的多元化變相實(shí)施價(jià)格歧視,達(dá)到利潤(rùn)的最大化,所以基本在一定的價(jià)格區(qū)間內(nèi)就會(huì)出現(xiàn)一次銷量和銷售額的急劇上升,中端市場(chǎng)是一個(gè)多層次的市場(chǎng)。
為了這一結(jié)論更加可靠,我們可以從品牌的價(jià)格競(jìng)爭(zhēng)策略上做一個(gè)橫向?qū)Ρ龋?/p>
# 中端市場(chǎng)價(jià)格多元化與銷售量的關(guān)系
pro_list = ['華為', '蘋果', '小米', '榮耀', 'oppo', 'vivo', '三星']
g_b_medium_df = medium_df.groupby('brand')['price']
price_sum_list = []
for i in range(len(pro_list)):
b_df = g_b_medium_df.get_group(pro_list[i]).value_counts()
price_sum_list.append(len(b_df))
# print(price_sum_list)
plt.figure(figsize=(12. 8))
sns.barplot(x=pro_list, y=price_sum_list)
plt.title('medium_market_brand_price')
plt.show()
g_b_medium_volume_df = medium_df.groupby('brand')['sales_volume']
volume_sum_list = []
for i in range(len(pro_list)):
b_df = g_b_medium_df.get_group(pro_list[i]).sum()
volume_sum_list.append(b_df)
# print(price_sum_list)
plt.figure(figsize=(12. 8))
sns.barplot(x=pro_list, y=volume_sum_list)
plt.title('medium_market_brand_volume')
plt.show()
在上圖中,左邊的圖表示在中端市場(chǎng)中每個(gè)品牌手機(jī)制定的價(jià)格數(shù)量,右邊的圖表示每個(gè)品牌手機(jī)在中端市場(chǎng)中的銷售額,我們可以很明顯的看出一致性非常強(qiáng),既制定價(jià)格數(shù)越多的品牌,其對(duì)應(yīng)的銷售額就越多,這也很好的證明了我們上面的結(jié)論。
所以,在未來,手機(jī)廠商們應(yīng)該重點(diǎn)把握中端市場(chǎng)仍未飽和的機(jī)會(huì),注重以年輕用戶喜歡拍照,注重產(chǎn)品外觀,看中產(chǎn)品是否為正品等方面的性能為導(dǎo)向,打造個(gè)性化、多樣化的產(chǎn)品,制定多元化的價(jià)格策略,并制定一定的品牌驗(yàn)證機(jī)制,實(shí)現(xiàn)營(yíng)收上的增長(zhǎng)。
(5)高端市場(chǎng)產(chǎn)品和價(jià)格
高端市場(chǎng)在總的市場(chǎng)占比中超過20%,那么高端市場(chǎng)是否存在機(jī)會(huì)呢?
我們先來看一下高端市場(chǎng)的用戶分布情況:
上圖是高端市場(chǎng)用戶的一個(gè)分布圖,和中端市場(chǎng)類似,由于我們?cè)趶脑u(píng)論中挖掘用戶信息的時(shí)候,主要是挖掘在評(píng)論中提及到的對(duì)象,比如某條評(píng)論中可能會(huì)提及到手機(jī)適合老人使用,那么我們就可以挖掘到老人這個(gè)用戶信息,但是對(duì)于大部分給自己買手機(jī)的消費(fèi)者來說,不會(huì)表明自己的身份,只會(huì)對(duì)產(chǎn)品本身加以評(píng)論,所以圖中缺失的98.0%的用戶信息主要集中在中青年,有獨(dú)立的消費(fèi)能力的人群中。
接著我們來看高端市場(chǎng)用戶畫像:
# 高端市場(chǎng)用戶畫像研究
high_df = df.loc[df['分組'].isin(list(np.arange(31. 60))), ]
cols = ['系統(tǒng)很強(qiáng)大', '手機(jī)不錯(cuò)', '用得久', '手機(jī)一般', '電池_1', '電池_0', '信號(hào)_1', '信號(hào)_0', '性價(jià)比_1', '功能_1', '功能_0', '音質(zhì)_1', '音質(zhì)_0', '屏幕_1', '屏幕_0', '正品_1', '軟件_1', '軟件_0', '按鍵_1', '按鍵_0', '外觀_1', '外觀_0', '拍照_1', '拍照_0', '手感_1', '死機(jī)_1', '配件_1', '配件_0', '包裝_1', '贈(zèng)品_1', '贈(zèng)品_0', '物流_1', '物流_0', '視頻_1', '發(fā)熱_1', '發(fā)熱_0', '輕便_1', '操作_1', '性價(jià)比_0', '正品_0', '手感_0', '死機(jī)_0', '包裝_0', '總體_1', '總體_0', '視頻_0', '輕便_0', '操作_0']
# 進(jìn)行用戶分組分析
g_high_u_df = high_df[cols].sum(axis=0).sort_values(ascending=False)
# 高端市場(chǎng)用戶關(guān)注性能分析
plt.figure(figsize=(10. 10))
plt.pie(g_high_u_df[0: 10], labels=g_high_u_df.index[0: 10], autopct="%1.1f%%")
plt.title('high_user_point')
plt.show()
#中端市場(chǎng)品牌分析
g_high_m_df = high_df.groupby('brand')['sales_amount'].sum().sort_values(ascending=False)
# 中年人用戶品牌分析
plt.figure(figsize=(10. 10))
plt.pie(g_high_m_df[0: 5], labels=g_high_m_df.index[0: 5], autopct="%1.1f%%")
plt.title('high_user_brand')
plt.show()
上圖中左邊為高端市場(chǎng)中用戶關(guān)注的手機(jī)屬性分布情況,右圖為高端市場(chǎng)的用戶對(duì)品牌的偏好分布情況,對(duì)比后我們發(fā)現(xiàn):
①區(qū)別于中低端市場(chǎng),高端市場(chǎng)中,用戶除了關(guān)注手機(jī)的一些通用屬性外,更為關(guān)注產(chǎn)品的外觀以及是否為正品;
②高端市場(chǎng)中品牌的集中度非常高,蘋果的銷量占比超過70%,華為和三星占一定比例。
對(duì)于高端市場(chǎng)而言,是否存在中端市場(chǎng)中的價(jià)格多元化以及銷售額正相關(guān)的關(guān)系呢?
我們來看高端市場(chǎng)中制定各品牌制定的價(jià)格數(shù)量和銷售額之間的關(guān)系:
# 高端市場(chǎng)價(jià)格多元化與銷售量的關(guān)系
pro_list = ['華為', '蘋果', '小米', '榮耀', 'oppo', 'vivo', '三星']
g_b_high_df = high_df.groupby('brand')['price']
price_sum_list = []
for i in range(len(pro_list)):
b_df = g_b_high_df.get_group(pro_list[i]).value_counts()
price_sum_list.append(len(b_df))
# print(price_sum_list)
plt.figure(figsize=(12. 8))
sns.barplot(x=pro_list, y=price_sum_list)
plt.title('high_market_brand_price')
plt.show()
g_b_high_volume_df = high_df.groupby('brand')['sales_volume']
volume_sum_list = []
for i in range(len(pro_list)):
b_df = g_b_high_df.get_group(pro_list[i]).sum()
volume_sum_list.append(b_df)
# print(price_sum_list)
plt.figure(figsize=(12. 8))
sns.barplot(x=pro_list, y=volume_sum_list)
plt.title('high_market_brand_volume')
plt.show()
在上圖中,左邊的圖表示在高端市場(chǎng)中每個(gè)品牌手機(jī)制定的價(jià)格數(shù)量,右邊的圖表示每個(gè)品牌手機(jī)在高端市場(chǎng)中的銷售額,我們可以很明顯的看出華為在高端市場(chǎng)中價(jià)格制定相對(duì)比較集中,但是其在銷售額上仍然表現(xiàn)比較好,這其實(shí)反映了華為進(jìn)入高端市場(chǎng)是相對(duì)比較謹(jǐn)慎的。
那高端市場(chǎng)對(duì)于一個(gè)追求營(yíng)收最大化的品牌來說,應(yīng)不應(yīng)該重點(diǎn)布局呢?
我們這里先看一下各品牌的市場(chǎng)占比以及均價(jià)其情況:
# 銷量和銷售額分析
g_a_df = df.groupby('brand')['sales_amount'].sum().sort_values(ascending=False)
g_v_df = df.groupby('brand')['sales_volume'].sum().sort_values(ascending=False)
# 銷售量
plt.figure(figsize=(12. 12))
plt.pie(g_a_df[0: 8], labels=g_a_df.index[0: 8], autopct="%1.1f%%")
plt.title('high_user_brand')
plt.show()
# 銷售額
plt.figure(figsize=(12. 12))
plt.pie(g_v_df[0: 8], labels=g_v_df.index[0: 8], autopct="%1.1f%%")
plt.title('high_user_brand')
plt.show()
在上圖中,左邊的圖表示各品牌的銷量占比,右邊的圖表示每個(gè)品牌手機(jī)銷售額占比。結(jié)合三星在中高端市場(chǎng)多元化的價(jià)格策略分析,我們發(fā)現(xiàn)盡管三星在中端市場(chǎng)和高端市場(chǎng)中實(shí)施了多元化的價(jià)格策略,但是從整體上來看,中高端市場(chǎng)的價(jià)格多元化戰(zhàn)略并沒有給三星帶來整體市場(chǎng)在銷量以及銷售額上的提升。這是什么原因造成的呢?
對(duì)比三星在中端市場(chǎng)和高端市場(chǎng)制定價(jià)格和銷售額的關(guān)系,我們發(fā)現(xiàn),三星在高端市場(chǎng)多元化的價(jià)格戰(zhàn)略實(shí)際上帶來了銷售的增長(zhǎng),但是在中端市場(chǎng)中三星的價(jià)格多元化戰(zhàn)略明顯比較失敗,因?yàn)樾∶?、榮耀、vivo、oppo制定的價(jià)格數(shù)量都小于三星,但是在銷售額上卻要比三星的占比要高,最終從整個(gè)市場(chǎng)來看,榮耀、vivo、小米、oppo的銷售額都高于三星。
那為什么三星會(huì)在中端市場(chǎng)遭遇滑鐵盧呢?
我們來看一下中端市場(chǎng)各品牌手機(jī)的均價(jià):
# 各品牌均價(jià)
g_mp_df = medium_df.groupby('brand')['price'].mean().sort_values(ascending=False)
plt.figure(figsize=(20. 8))
sns.barplot(x=g_mp_df.index, y=g_mp_df.values)
plt.xticks(rotation=90)
plt.title('m_brand_mean_price')
plt.show()
我們可以看出在中端市場(chǎng),銷售額占比較大的幾個(gè)品牌除了蘋果外,華為、小米、榮耀、oppo、vivo的價(jià)格均低于三星。
從整體上來看,在中端市場(chǎng)中三星雖然價(jià)格也比較多元化,但是,第一品牌弱于蘋果,第二價(jià)格高于華為、小米、榮耀、oppo、vivo,所以導(dǎo)致三星在中端市場(chǎng)從品牌和價(jià)格上都不占優(yōu)勢(shì),在中端市場(chǎng)中的銷量和營(yíng)收占比都較低。這是三星在戰(zhàn)略上的失誤,三星并沒有在中端市場(chǎng)取穩(wěn)固,取得優(yōu)勢(shì)的前提下,再進(jìn)入高端市場(chǎng)。
而相對(duì)來說國(guó)內(nèi)的品牌華為在中端市場(chǎng)穩(wěn)固的前提下非常謹(jǐn)慎地進(jìn)入高端市場(chǎng),并取得了一定的成效。vivo基本上沒有進(jìn)攻高端市場(chǎng),繼續(xù)做大坐穩(wěn)中端市場(chǎng),并在2019年中市占率超過了oppo。oppo正在嘗試進(jìn)入高端市場(chǎng),中端市場(chǎng)的穩(wěn)固性出現(xiàn)一定的調(diào)整。小米也在嘗試進(jìn)入高端市場(chǎng),但是成效并不理想。
所以我們發(fā)現(xiàn)中端市場(chǎng),對(duì)于一個(gè)品牌來說,不管是市場(chǎng)的穩(wěn)固,還是發(fā)展機(jī)遇都非常重要,對(duì)于高端市場(chǎng),品牌的壁壘非常強(qiáng),用戶對(duì)品牌的認(rèn)可度非常高,不應(yīng)該在中端市場(chǎng)得不到穩(wěn)固的情況下貿(mào)然進(jìn)入。
(7)策略建議
①中端市場(chǎng)在未來仍然存在著較大的市場(chǎng)發(fā)展空間,品牌商應(yīng)該把握住中端市場(chǎng)的機(jī)會(huì),進(jìn)一步鞏固自己的市場(chǎng)地位。
②對(duì)于中端市場(chǎng)中競(jìng)爭(zhēng)的各大品牌來說,應(yīng)該聚焦于消費(fèi)者最關(guān)心的性能,重點(diǎn)打造差異化個(gè)性化產(chǎn)品,建立起與其他品牌的競(jìng)爭(zhēng)優(yōu)勢(shì),為品牌創(chuàng)收,并形成品牌標(biāo)簽,增強(qiáng)品牌的傳播力度,同時(shí)為品牌的升級(jí)奠定市場(chǎng)基礎(chǔ)和消費(fèi)心理需求。
③在中端市場(chǎng)中,消費(fèi)者對(duì)品牌的認(rèn)可度相對(duì)來說不高,消費(fèi)者更加關(guān)注產(chǎn)品的性能和價(jià)格,對(duì)應(yīng)的應(yīng)該實(shí)施更為多元化的價(jià)格策略。
④目前國(guó)產(chǎn)品牌在中端市場(chǎng)占有絕對(duì)的優(yōu)勢(shì),對(duì)于華為來說,高端市場(chǎng)的進(jìn)入取得了初步的成效,但是仍然需要注意防守中端市場(chǎng);對(duì)于oppo和小米來說,中端市場(chǎng)有一定程度的下降,進(jìn)入高端市場(chǎng)需要謹(jǐn)慎,不能急于求成,一定要穩(wěn)固好中端市場(chǎng);對(duì)于vivo來說,在中端市場(chǎng)得到強(qiáng)化的同時(shí),應(yīng)該逐步打造幾款特征鮮明的產(chǎn)品,嘗試進(jìn)入高端市場(chǎng)。
⑤在高端市場(chǎng),用戶的品牌忠誠(chéng)度非常高,品牌壁壘效應(yīng)強(qiáng),不應(yīng)該在中端市場(chǎng)得不到穩(wěn)固的情況下貿(mào)然進(jìn)入。
⑥對(duì)于已經(jīng)進(jìn)入高端市場(chǎng)的品牌來說,需要建立品牌驗(yàn)證機(jī)制,同時(shí)和子品牌建立一定的品牌隔離,保證高端市場(chǎng)用戶的消費(fèi)體驗(yàn)。
⑦在低端市場(chǎng)中,能夠通過打造一些剛需產(chǎn)品,迅速拓展品牌的銷量,所以對(duì)于其他小品牌來說,品牌的塑造應(yīng)該從中低端市場(chǎng)切入,在低端市場(chǎng)打造高性價(jià)比的剛需產(chǎn)品,擴(kuò)大品牌受眾;在中端市場(chǎng)打造差異化、個(gè)性化的產(chǎn)品為品牌創(chuàng)收,強(qiáng)化自己的市場(chǎng)地位。
樂發(fā)網(wǎng)超市批發(fā)網(wǎng)提供超市貨源信息,超市采購(gòu)進(jìn)貨渠道。超市進(jìn)貨網(wǎng)提供成都食品批發(fā),日用百貨批發(fā)信息、微信淘寶網(wǎng)店超市采購(gòu)信息和超市加盟信息.打造國(guó)內(nèi)超市采購(gòu)商與批發(fā)市場(chǎng)供應(yīng)廠商搭建網(wǎng)上批發(fā)市場(chǎng)平臺(tái),是全國(guó)批發(fā)市場(chǎng)行業(yè)中電子商務(wù)權(quán)威性網(wǎng)站。
本文內(nèi)容整合網(wǎng)站:百度百科、知乎、淘寶平臺(tái)規(guī)則
本文來源: 淘寶電商數(shù)據(jù)挖掘與分析