日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

[MySQL | Python] MySQL频数表、Python频数表

發(fā)布時(shí)間:2024/3/12 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [MySQL | Python] MySQL频数表、Python频数表 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

目錄

1 MySQL頻數(shù)頻率表

?1.1. 分類計(jì)數(shù)

?1.2 分類計(jì)數(shù)+匯總

?1.3 分類計(jì)數(shù)+匯總+百分比+降序

2. Python中頻數(shù)頻率表

?2.1 頻數(shù)頻率表

?2.2 頻數(shù)圖

?2.3 繪制餅圖


數(shù)據(jù)集:

名字:附件1

字段:股票代碼、所屬行業(yè)

條數(shù):4163條

1 MySQL頻數(shù)頻率表

?1.1. 分類計(jì)數(shù)

按所屬行業(yè)分類計(jì)數(shù) [SELECT 分組字段, 操作 FROM 表名 GROUP BY 分組字段]

SELECT a.`所屬行業(yè)`,count(a.`所屬行業(yè)`) FROM `附件1` AS a GROUP BY a.`所屬行業(yè)`;

?1.2 分類計(jì)數(shù)+匯總

按所屬行業(yè)分類計(jì)數(shù),并計(jì)算總值。

+with rollup 后會再統(tǒng)計(jì)一行整數(shù),但沒有名字。

coalesce()函數(shù),原是用于空值處理;這里似乎只是增加命名。

SELECTCOALESCE(a.`所屬行業(yè)`,'總計(jì)'),COUNT(a.`所屬行業(yè)`) FROM`附件1` AS a GROUP BY a.`所屬行業(yè)` WITH ROLLUP;

1.3 分類計(jì)數(shù)+匯總+百分比+降序

-- 分類匯總+總數(shù)+百分比+升序 -- SELECT count(*) FROM `附件1` --統(tǒng)計(jì)表格總行數(shù),輸出4163 SELECTCOALESCE(a.`所屬行業(yè)`,'總計(jì)') AS '行業(yè)',COUNT(a.`所屬行業(yè)`) AS '頻數(shù)',COUNT(a.`所屬行業(yè)`)/(SELECT count(*) FROM `附件1`)*100 AS '百分比%' FROM`附件1` AS a GROUP BY a.`所屬行業(yè)` with ROLLUP ORDER BYCOUNT(a.`所屬行業(yè)`);

2. Python中頻數(shù)頻率表

2.1 頻數(shù)頻率表

#[Python]導(dǎo)入數(shù)據(jù) df1 = pd.read_excel('附件1.xlsx','Sheet1')#僅頻數(shù) F = df1['所屬行業(yè)'].value_counts() F = pd.DataFrame(F)#增加百分比列 F['百分比%'] = F.iloc[:,0]/df1.shape[0]*100 #增加匯總行 F.loc['總計(jì)'] = [sum(F['所屬行業(yè)']), sum(F['百分比%'])]

?2.2 頻數(shù)圖

#由于要繪制頻數(shù)圖,刪去“總計(jì)”列 F = F.drop(index='總計(jì)')import matplotlib.pyplot as plt #導(dǎo)入包# 這兩行代碼解決 plt 中文顯示的問題 plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False#繪圖條形圖 plt.bar(F.index, F['所屬行業(yè)']) plt.title('所屬行業(yè)頻數(shù)') plt.ylabel('頻數(shù)') plt.xticks(rotation=300) #標(biāo)簽傾斜300度#為每個條形圖添加數(shù)值標(biāo)簽 for x,y in enumerate(F['所屬行業(yè)']):plt.text(x,y+0.1,"%s"%round(y,0),ha='center') #round(y,1)是將y值四舍五入到一個小數(shù)位plt.show()

?2.3 繪制餅圖

#繪制餅圖 import matplotlib.pyplot as plt #導(dǎo)入繪圖包# 這兩行代碼解決 plt 中文顯示的問題 plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False #繪制餅圖 plt.pie(F['百分比%'],labels=F.index,autopct='%3.2f%%') #顯示3位整數(shù)兩位小數(shù) plt.title('所屬行業(yè)') #加標(biāo)題plt.show()

總結(jié)

以上是生活随笔為你收集整理的[MySQL | Python] MySQL频数表、Python频数表的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。