Python 当当网数据分析
關(guān)注微信公共號:小程在線
關(guān)注CSDN博客:程志偉的博客
Python 3.7.6 (default, Jan ?8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)]
Type "copyright", "credits" or "license" for more information.
IPython 7.12.0 -- An enhanced Interactive Python.
1. 讀數(shù)據(jù)表
首先,我們讀取原始數(shù)據(jù)。數(shù)據(jù)集各字段的介紹可參考此處
import pandas as pd
import re
df=pd.read_csv(r'F:\Python\合鯨社區(qū)\10-當(dāng)當(dāng)網(wǎng)圖書分析\圖書數(shù)據(jù)集.csv',delimiter='\t')
df.head(5)
Out[2]:?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 書名 ?... ? ? ? 評論數(shù)
0 ? 機(jī)器學(xué)習(xí) 擊敗AlphaGo的武林秘籍,贏得人機(jī)大戰(zhàn)的必由之路:人工智能大牛周志華教授巨著... ?... ?76149條評論
1 ? 機(jī)器學(xué)習(xí)實(shí)戰(zhàn)【python基礎(chǔ)教程指南,python核心編程實(shí)例指導(dǎo),對wxpython數(shù)... ?... ?25256條評論
2 ? 機(jī)器學(xué)習(xí)實(shí)戰(zhàn):基于Scikit-Learn和TensorFlow 被稱為機(jī)器學(xué)習(xí)圖書*強(qiáng)的... ?... ? 5759條評論
3 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?機(jī)器學(xué)習(xí)理論導(dǎo)引 ? ... ? ?783條評論
4 ? 機(jī)器學(xué)習(xí)――原理、算法與應(yīng)用 全書深入淺出,兼具廣度與深度,幫助讀者真正掌握機(jī)器學(xué)習(xí)、深度... ?... ? 1184條評論
[5 rows x 5 columns]
2. 提取價(jià)格數(shù)值
我們?nèi)サ舢?dāng)前價(jià)格這一列中的 '¥' 符號,將當(dāng)前價(jià)格中的數(shù)值提取出來,保存為新的一列當(dāng)前價(jià)格_match。
df['當(dāng)前價(jià)格_match']=df['當(dāng)前價(jià)格'].str.replace('¥','')
df['當(dāng)前價(jià)格_match']=df['當(dāng)前價(jià)格_match'].astype('float')
3. 提取評論數(shù)
對于評論數(shù)這一列提取數(shù)值,保存為評論數(shù)_match。
df['評論數(shù)_match']=df['評論數(shù)'].str.replace('條評論','').astype('int32')
4.提取星級數(shù)值
對于星級這一列提取數(shù)值,保存為星級_match。
df['星級_match']=df['星級'].str.replace('width: ','')
df['星級_match']=df['星級_match'].str.replace('%;','').astype('int32')
5. 星級數(shù)值除以20
接著將提取出的星級數(shù)值除以20,將取值范圍轉(zhuǎn)換為[0,5]。
def function(x):
? ? if x==100:
? ? ? ? return '5星'
? ? elif x==90:
? ? ? ? return '4星半'
? ? elif x==80:
? ? ? ? return '4星'
? ? elif x==70:
? ? ? ? return '3星半'
? ? elif x==60:
? ? ? ? return '3星'
? ? elif x==50:
? ? ? ? return '2星半'
? ? elif x==40:
? ? ? ? return '2星'
? ? elif x==30:
? ? ? ? return '1星半'
? ? elif x==20:
? ? ? ? return '1星'
? ? elif x==10:
? ? ? ? return '半星'
? ? else:
? ? ? ? return '0星'
df['星級_match']=df['星級_match'].apply(function)
6. 出版信息字符串分割
接下來我們處理出版信息這一列,從原始數(shù)據(jù)中可以看到,這一列主要包含三個(gè)信息,分別是作者、出版日期、出版社。它們以“/”分隔,并且存放在一個(gè)數(shù)據(jù)單元中,我們將它們分別取出,然后單獨(dú)存為三列。
def function_1(x):
? ? return x.split('/')[0]
def function_2(x):
? ? if len(x.split('/',2))==3:
? ? ? ? return x.split('/',2)[1]
? ? else:
? ? ? ? return '未知'
def function_3(x):
? ? return x.split('/',2)[-1]
df['作者']=df['出版信息'].apply(function_1)
df['出版社']=df['出版信息'].apply(function_3)
df['出版時(shí)間']=df['出版信息'].apply(function_2)
7. 書名去掉【】
書名信息中混合著簡介信息,觀察原始數(shù)據(jù)中書名一列,能找到一些規(guī)律。除去一些包含在 【】和 [] 中間的標(biāo)注信息,剩余的內(nèi)容中書名和其他內(nèi)容基本是由空格隔開的。所以我們首先將【】和 [] 去掉,然后按照空格分隔字符串,第一個(gè)內(nèi)容便是書名。
首先在書名一列中去掉【】中的信息,并將結(jié)果保存為書名_replace:
df['書名_replace']=df['書名'].str.replace('【',' ')
df['書名_replace']=df['書名_replace'].str.replace('】',' ')
8. 書名去掉[]
接著在書名_replace一列中去掉[]中的信息,保存為書名_replace_replace:
df['書名_replace_replace']=df['書名_replace'].str.replace('[','')
df['書名_replace_replace']=df['書名_replace_replace'].str.replace(']','')
9. 書名字符串分割
去除方括號【】和[]后我們把書名_replace_replace列中文字根據(jù)空格進(jìn)行字符串分割,并進(jìn)行分列。
def name(x):
? ? return x.split()[0]
def jianjie_1(x):
? ? a=x.split()
? ? if len(a)==1:
? ? ? ? return ' '
? ? else:
? ? ? ? return a[1]
def jianjie_2(x):
? ? a=x.split()
? ? if len(a)==3:
? ? ? ? return a[2]
? ? else:
? ? ? ? return ' '
df['name']=df['書名_replace_replace'].apply(name)
df['簡介_1']=df['書名_replace_replace'].apply(jianjie_1)
df['簡介_2']=df['書名_replace_replace'].apply(jianjie_2)
10. 刪除不需要的數(shù)據(jù)列
在原始數(shù)據(jù)中和上面操作生成數(shù)據(jù)中有許多冗余數(shù)據(jù)列,我們把不需要的數(shù)據(jù)列都刪除掉。
df=df.drop(['書名','出版信息','當(dāng)前價(jià)格','星級','評論數(shù)','書名_replace','書名_replace_replace'],axis=1)11. 數(shù)據(jù)字段重命名?
df['當(dāng)前價(jià)格']=df['當(dāng)前價(jià)格_match']
df['評論數(shù)']=df['評論數(shù)_match']
df['星級']=df['星級_match']
df['書名稱']=df['name']
df=df.drop(['當(dāng)前價(jià)格_match','評論數(shù)_match','星級_match','name'],axis=1)
df=df.reindex(['當(dāng)前價(jià)格','星級','評論數(shù)','作者','出版社','出版時(shí)間','書名稱','簡介_1','簡介_2'],axis=1)
12. 查看數(shù)據(jù)
首先使用讀數(shù)據(jù)表組件讀取原始數(shù)據(jù),并查看各字段基本情況。
df.head(5)
Out[15]:?
? ?當(dāng)前價(jià)格 ? 星級 ?... ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 簡介_1 簡介_2
0 ?66.0 ?4星半 ?... ?擊敗AlphaGo的武林秘籍,贏得人機(jī)大戰(zhàn)的必由之路:人工智能大牛周志華教授巨著,全面揭開機(jī)... ? ??
1 ?46.3 ?4星半 ?... ?python基礎(chǔ)教程指南,python核心編程實(shí)例指導(dǎo),對wxpython數(shù)據(jù)庫充分的講解,... ? ??
2 ?83.3 ?4星半 ?... ?被稱為機(jī)器學(xué)習(xí)圖書*強(qiáng)的存在!前谷歌工程師撰寫,“美亞”人工智能圖書暢銷榜首圖書!從實(shí)踐出發(fā)... ? ??
3 ?62.3 ? 5星 ?... ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
4 ?39.6 ?4星半 ?... ? ? ? ? ? ? 全書深入淺出,兼具廣度與深度,幫助讀者真正掌握機(jī)器學(xué)習(xí)、深度學(xué)習(xí)的原理與應(yīng)用 ? ??
[5 rows x 9 columns]
13. 字段基本統(tǒng)計(jì)信息
這一步使用字段基本信息統(tǒng)計(jì)組件統(tǒng)計(jì)并生成數(shù)據(jù)集中各個(gè)字段的樣本數(shù)、均值、標(biāo)準(zhǔn)差、最小值、四分位數(shù)等基本信息。
In?[23]:
df.describe()
Out[16]:?
? ? ? ? ? ? ?當(dāng)前價(jià)格 ? ? ? ? ? 評論數(shù)
count ?600.000000 ? ?600.000000
mean ? ?60.941183 ? ?530.863333
std ? ? 32.768884 ? 4074.239732
min ? ? 14.990000 ? ? ?0.000000
25% ? ? 44.075000 ? ? ?0.000000
50% ? ? 55.600000 ? ? ?7.000000
75% ? ? 69.000000 ? ?133.000000
max ? ?355.000000 ?76149.000000
14. 各出版社出版圖書數(shù)量
使用查看唯一值及數(shù)量組件,統(tǒng)計(jì)圖書所屬的出版社信息。
df.groupby(['出版社']).size().sort_values(ascending=False)
Out[17]:?
出版社
機(jī)械工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?215
人民郵電出版社 ? ? ? ? ? ? ? ? ? ? ? ?127
清華大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?112
電子工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 52
東南大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 17
科學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ? 16
北京大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 11
水利水電出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?8
中國電力出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?4
人民郵電出版社有限公司 ? ? ? ? ? ? ? ? ? ? ?4
中國人民大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?3
化學(xué)工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?3
西安電子科技大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ?2
中信出版社 ? ? ? ? ? ? ? ? ? ? ? ? ? ?2
人民郵電出版社 等 ? ? ? ? ? ? ? ? ? ? ? ?2
華中科技大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?2
科學(xué)技術(shù)文獻(xiàn)出版社 ? ? ? ? ? ? ? ? ? ? ? ?2
知識產(chǎn)權(quán)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?2
清華大學(xué)出版社 人民郵電出版社 ? ? ? ? ? ? ? ? ?2
莎拉?圭多 /2017-01-01 ?/東南大學(xué)出版社 ? ? ?1
中國科學(xué)技術(shù)大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ?1
2020-07-01 ? ? ? ? ? ? ? ? ? ? ? 1
上海浦江教育出版社 ? ? ? ? ? ? ? ? ? ? ? ?1
武漢大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?1
中山大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?1
哈爾濱工業(yè)大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? 1
機(jī)械工業(yè)出版社 清華大學(xué)出版社 ? ? ? ? ? ? ? ? ?1
時(shí)事出版社 ? ? ? ? ? ? ? ? ? ? ? ? ? ?1
廣東高等教育出版社 ? ? ? ? ? ? ? ? ? ? ? ?1
冶金工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?1
國防工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?1
北京交通大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?1
2018-05-16 ?/同濟(jì)大學(xué)出版社 ? ? ? ? ? ? 1
dtype: int64
15. 各星級圖書數(shù)量統(tǒng)計(jì)直方圖
這一步統(tǒng)計(jì)圖書的星級信息。
star=df.groupby(['星級']).size()
star
Out[18]:?
星級
0星 ? ? 345
1星半 ? ? ?2
2星半 ? ? ?1
3星 ? ? ? 2
3星半 ? ? ?4
4星 ? ? ?16
4星半 ? ? 66
5星 ? ? 164
dtype: int64
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Faker
c=Bar()
c.add_xaxis(star.index.tolist())
c.add_yaxis("數(shù)量",star.values.tolist())
c.reversal_axis()
c.set_series_opts(label_opts=opts.LabelOpts(position="right"))
c.set_global_opts(title_opts=opts.TitleOpts(title="各星級的數(shù)量"))
c.render_notebook()
?
16. 圖書價(jià)格直方圖
使用直方圖,顯示圖書的價(jià)格分布。
#16. 圖書價(jià)格直方圖
price=df['當(dāng)前價(jià)格']
price=price.tolist()
cats=pd.cut(price,20,3)
price_1=df.value_counts(cats).sort_index()
price_1
price_index=['(14.65, 31.99)','(31.99, 48.991)','(48.991, 65.991)','(65.991, 82.992)','(82.992, 99.992)','(99.992, 116.993)'
? ? ? ? ? ? ,'(116.993, 133.993)','(133.993, 150.994)','(167.994, 184.995)','(184.995, 201.996)','(201.996, 218.996)',
? ? ? ? ? ? '(218.996, 235.996)','(235.996, 252.997)','(252.997, 269.998)','(269.998, 286.998)','(286.998, 303.998)',
? ? ? ? ? ? '(320.999, 338.0)','(338.0, 355.0)']
from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Faker
c=Bar()
c.add_xaxis(price_index)
c.add_yaxis("在該價(jià)格區(qū)間的數(shù)量", price_1.values.tolist())
c.set_global_opts(title_opts=opts.TitleOpts(title="圖書價(jià)格直方圖"))
c.render_notebook()
?
17. 高價(jià)書籍篩選
在上一步,通過繪制圖書價(jià)格的直方圖,我們發(fā)現(xiàn)一部分圖書價(jià)格偏離樣本均值較大,我們接下來針對這一部分圖書進(jìn)行定性分析。我們首先使用數(shù)據(jù)篩選組件篩選出價(jià)格大于100元的圖書信息。篩選結(jié)果如下表所示:
more_100=df[df['當(dāng)前價(jià)格']>100]
more_100.head(5)
Out[18]:?
? ? ?當(dāng)前價(jià)格 ? 星級 ?... ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 簡介_1 簡介_2
5 ? 112.6 ? 4星 ?... ? ? ? ? ? ? ? ? ? ? ? ? ? ? 人工智能算法,機(jī)器學(xué)習(xí)奠基之作,AI圣經(jīng) ? ??
34 ?104.2 ? 0星 ?... ?全景式呈現(xiàn)機(jī)器學(xué)習(xí)領(lǐng)域的基礎(chǔ)理論,以及將這些技術(shù)應(yīng)用于實(shí)際問題的有效方法,提供自學(xué)項(xiàng)目和數(shù)據(jù)集 ? ??
53 ?101.9 ? 5星 ?... ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?自動化技術(shù) ? ??
80 ?212.5 ? 5星 ?... ? ? ? ? ? ? ? ? ?暢讀原版機(jī)器學(xué)習(xí)經(jīng)典著作,在全景式知識體系中融會傳統(tǒng)與創(chuàng)新算法 ? ??
94 ?101.1 ?4星半 ?... ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
[5 rows x 9 columns]
18. 高價(jià)書籍所屬出版社統(tǒng)計(jì)
上一步中我們篩選出了價(jià)格大于100元的圖書,這一步我們使用餅狀圖展示這一部分圖書所屬的出版社。
a=more_100.groupby(['出版社']).size().sort_values()
a.pop('2020-07-01')
a
Out[19]:?
出版社
北京大學(xué)出版社 ? ? ? ? ? ? 1
廣東高等教育出版社 ? ? ? ? ? 1
機(jī)械工業(yè)出版社 清華大學(xué)出版社 ? ? 1
人民郵電出版社 等 ? ? ? ? ? 2
清華大學(xué)出版社 ? ? ? ? ? ? 2
清華大學(xué)出版社 人民郵電出版社 ? ? 2
科學(xué)出版社 ? ? ? ? ? ? ? 2
電子工業(yè)出版社 ? ? ? ? ? ? 4
人民郵電出版社 ? ? ? ? ? ?14
機(jī)械工業(yè)出版社 ? ? ? ? ? ?15
dtype: int64
19. 各出版社圖書價(jià)格均值
這一步使用數(shù)據(jù)分組聚合組件,對圖書分組列分組聚合分析。分組的列為出版社,聚合列為圖書價(jià)格,聚合函數(shù)為平均值函數(shù)。這一步的分析主要是計(jì)算各個(gè)出版社出版圖書的平均價(jià)格的高低。分組聚合分析的結(jié)果如下表所示:
c=df['當(dāng)前價(jià)格'].groupby(df['出版社']).mean()
c.drop(['2018-05-16 ?/同濟(jì)大學(xué)出版社','2020-07-01'])
Out[20]:?
出版社
上海浦江教育出版社 ? ? ? ? ? ? ? ? ? ? ? 73.570000
東南大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 67.027647
中信出版社 ? ? ? ? ? ? ? ? ? ? ? ? ? 35.495000
中國人民大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? 37.533333
中國電力出版社 ? ? ? ? ? ? ? ? ? ? ? ? 38.475000
中國科學(xué)技術(shù)大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? 47.600000
中山大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 42.300000
人民郵電出版社 ? ? ? ? ? ? ? ? ? ? ? ? 60.872913
人民郵電出版社 等 ? ? ? ? ? ? ? ? ? ? ?129.235000
人民郵電出版社有限公司 ? ? ? ? ? ? ? ? ? ? 37.505000
冶金工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 36.300000
化學(xué)工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 40.166667
北京交通大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? 50.600000
北京大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 53.271818
華中科技大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? 34.050000
哈爾濱工業(yè)大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ?59.200000
國防工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 81.200000
廣東高等教育出版社 ? ? ? ? ? ? ? ? ? ? ?169.970000
時(shí)事出版社 ? ? ? ? ? ? ? ? ? ? ? ? ? 59.900000
機(jī)械工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 64.535302
機(jī)械工業(yè)出版社 清華大學(xué)出版社 ? ? ? ? ? ? ? ?200.000000
武漢大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 30.000000
水利水電出版社 ? ? ? ? ? ? ? ? ? ? ? ? 49.475000
清華大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 50.729464
清華大學(xué)出版社 人民郵電出版社 ? ? ? ? ? ? ? ?290.000000
電子工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 59.374231
知識產(chǎn)權(quán)出版社 ? ? ? ? ? ? ? ? ? ? ? ? 34.350000
科學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ? 76.913750
科學(xué)技術(shù)文獻(xiàn)出版社 ? ? ? ? ? ? ? ? ? ? ? 38.950000
莎拉?圭多 /2017-01-01 ?/東南大學(xué)出版社 ? ? 70.300000
西安電子科技大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? 31.050000
Name: 當(dāng)前價(jià)格, dtype: float64?
20.各出版社出版圖書口碑分析
這一步我們通過計(jì)算出版社出版機(jī)器學(xué)習(xí)類圖書平均星級的高低,來分析出版社出版機(jī)器學(xué)習(xí)類圖書的質(zhì)量以及出版社在用戶中的口碑。使用數(shù)據(jù)分組聚合組件,對圖書進(jìn)行分組聚合分析。分組的列為出版社,聚合列為圖書星級,聚合函數(shù)為平均值函數(shù)。這一步的分析主要是計(jì)算各個(gè)出版社出版圖書的平均星級的高低。分析的結(jié)果如下表所示:
df['星級(float)']=df['星級'].str.replace('星','.')
df['星級(float)']=df['星級(float)'].str.replace('半','5')
df['星級(float)']=df['星級(float)'].astype('float')
b=df['星級(float)'].groupby(df['出版社']).mean()
b.drop(['2018-05-16 ?/同濟(jì)大學(xué)出版社','2020-07-01'])
Out[21]:?
出版社
上海浦江教育出版社 ? ? ? ? ? ? ? ? ? ? ?0.000000
東南大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?2.000000
中信出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?4.750000
中國人民大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ?4.333333
中國電力出版社 ? ? ? ? ? ? ? ? ? ? ? ?3.625000
中國科學(xué)技術(shù)大學(xué)出版社 ? ? ? ? ? ? ? ? ? ?5.000000
中山大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?0.000000
人民郵電出版社 ? ? ? ? ? ? ? ? ? ? ? ?1.748031
人民郵電出版社 等 ? ? ? ? ? ? ? ? ? ? ?2.500000
人民郵電出版社有限公司 ? ? ? ? ? ? ? ? ? ?0.375000
冶金工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?0.000000
化學(xué)工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?1.666667
北京交通大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ?0.000000
北京大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?2.181818
華中科技大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ?2.500000
哈爾濱工業(yè)大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? 0.000000
國防工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?5.000000
廣東高等教育出版社 ? ? ? ? ? ? ? ? ? ? ?0.000000
時(shí)事出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?3.500000
機(jī)械工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?2.006977
機(jī)械工業(yè)出版社 清華大學(xué)出版社 ? ? ? ? ? ? ? ?0.000000
武漢大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?0.000000
水利水電出版社 ? ? ? ? ? ? ? ? ? ? ? ?4.750000
清華大學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ?1.647321
清華大學(xué)出版社 人民郵電出版社 ? ? ? ? ? ? ? ?5.000000
電子工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?2.605769
知識產(chǎn)權(quán)出版社 ? ? ? ? ? ? ? ? ? ? ? ?5.000000
科學(xué)出版社 ? ? ? ? ? ? ? ? ? ? ? ? ?2.187500
科學(xué)技術(shù)文獻(xiàn)出版社 ? ? ? ? ? ? ? ? ? ? ?2.500000
莎拉?圭多 /2017-01-01 ?/東南大學(xué)出版社 ? ?5.000000
西安電子科技大學(xué)出版社 ? ? ? ? ? ? ? ? ? ?0.000000
Name: 星級(float), dtype: float64
21. 數(shù)據(jù)按列值排序
在這一步,我們使用數(shù)據(jù)按列值排序組件,對上一步的分析結(jié)果,按照圖書星級平均值星級_mean進(jìn)行降序排序,結(jié)果如下:
b.sort_values(ascending=False).head(5)
Out[22]:?
出版社
國防工業(yè)出版社 ? ? ? ? ? ? ? ? ? ? ? ?5.0
知識產(chǎn)權(quán)出版社 ? ? ? ? ? ? ? ? ? ? ? ?5.0
清華大學(xué)出版社 人民郵電出版社 ? ? ? ? ? ? ? ?5.0
2020-07-01 ? ? ? ? ? ? ? ? ? ? 5.0
莎拉?圭多 /2017-01-01 ?/東南大學(xué)出版社 ? ?5.0
Name: 星級(float), dtype: float64
22.詞云圖
from pyecharts import options as opts
from pyecharts.charts import WordCloud
from pyecharts.globals import SymbolType
words = [
? ? ("學(xué)習(xí)", 10),
? ? ("機(jī)器", 61),
? ? ("算法", 43),
? ? ("實(shí)例", 40),
? ? ("技術(shù)", 24),
? ? ("理論", 22),
? ? ("應(yīng)用", 18),
? ? ("基礎(chǔ)知識", 14),
? ? ("數(shù)據(jù)分析", 11),
? ? ("科學(xué)", 8),
? ? ("基礎(chǔ)", 8),
? ? ("工程", 5),
? ? ("全面", 5),
? ? ("清華大學(xué)出版社", 5),
? ? ("經(jīng)典", 4),
? ? ("著作", 3),
? ? ("智能", 3),
? ? ("張敏玲", 2),
? ? ("模型", 2),
? ? ("問題", 2),
? ? ("王磊", 2),
? ? ("機(jī)械", 22),
? ? ("于洋", 18),
? ? ("周志華", 14),
? ? ("可視化", 11),
? ? ("阿圖爾", 8),
? ? ("數(shù)據(jù)挖掘", 8),
? ? ("幫助", 2),
? ? ("大量", 5),
? ? ("實(shí)際使用", 5),
? ? ("深度", 6),
? ? ("平臺", 3),
? ? ("視頻", 3),
? ? ("場景", 8),
? ? ("原理", 7),
? ? ("圖書", 5),
]
c=WordCloud()
c.add("詞云圖", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
c.set_global_opts(title_opts=opts.TitleOpts(title="WordCloud-shape-diamond"))
c.render_notebook()
?
總結(jié)
以上是生活随笔為你收集整理的Python 当当网数据分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三相同步电机怎么接线图_三相变频电机接线
- 下一篇: python中整数的长度_Python中