pandas第二集

阿里云双11来了!从本博客参与阿里云,服务器最低只要86元/年!

第一集说到 tbl_name 这个数据集,是这个样子的

IDmsize
1tiny,small,big
2small,medium
3tiny,big

这个表对于数据分析可不那么友好,比如需要统计各单词出现的个数

如果是sql处理,请参阅

import numpy as np
import pandas as pd
import pymysql
mysql_config = {'host':'localhost',
                'port':3306,
                'user':'root',
                'password':'1987',
                'database':'test',
                'charset':'utf8'}
conn = pymysql.connect(**mysql_config)
#查看DB test中所有的表
tables  = pd.read_sql('show tables',conn)
print('DB test所有的表:\n',tables)
#查看tbl_name中的数据
df_tbl_name = pd.read_sql('select ID , msize from tbl_name',conn)
print('tbl_name中的数据:\n',df_tbl_name)
df_tbl_name['msize_new'] = df_tbl_name['msize'].str.split(',')
df_tbl_name_new = pd.concat([df_tbl_name[['ID','msize']], df_tbl_name['msize_new'].explode()],axis=1)

关注df_tbl_name_new

indexIDmsizemsize_new
01tiny,small,bigtiny
01tiny,small,bigsmall
01tiny,small,bigbig
12small,mediumsmall
12small,mediummedium
23tiny,bigtiny
23tiny,bigbig

其中 用到了两个函数 concat explode ,前者是连接函数,后者是转换函数

最后group

df_tbl_name_new.groupby('msize_new')['msize_new'].count()
msize_newcount
big2
medium1
small2
tiny2

收工。

https://www.jianshu.com/p/7ef1aa059544

Python量化投资网携手4326手游为资深游戏玩家推荐:《《约战:精灵再临》:【秘密爆料】《约战》灵魂人物Tsunako老师专访!

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论