python基础-19-数据分析python——pandas——在mysql数据库添加表

本章内容包括:



//课前补充:SQL 更改数据类型:ALTER TABLE 表明 modify 字段名 数据类型;
在写入CSV的时候,先在mysql workbench内把表建好。
//input1
import pymysql
import pandas as pd
from sqlalchemy import create_engine
def reader(query,db='data'):
    sql = query
    engine = create_engine('mysql+pymysql://kuku:mysql1219@localhost:3306/{0}'.format(db))
    df = pd.read_sql(sql,engine)
    return df
df_company = reader('select * from company')
df_company.head()



//output1
companyId   companyFullName companyLabelList    companyShortName    companySize businessZones
0   43  北京欧应科技有限公司  ['五险一金', '扁平化管理', '创业型企业', '岗位晋升']  唯医网 150-500人    ['东大桥', 'CBD', '朝外']
1   53  北京创锐文化传媒有限公司    ['技能培训', '节日礼物', '季度奖金', '岗位晋升']    聚美优品    2000人以上 ['东直门', '海运仓', '东四']
2   62  北京字节跳动科技有限公司    ['扁平管理', '弹性工作', '大厨定制三餐', '就近租房补贴']    今日头条    2000人以上 ['双榆树', '大钟寺', '中关村']
3   70  宝宝树(北京)信息技术有限公司 ['商业医疗保险', '股票期权', '带薪年假', '扁平管理']  宝宝树 500-2000人   ['团结湖', '朝阳公园', '三里屯']
4   91  高德软件有限公司    ['弹性工作', '帅哥多', '美女多', '五险一金']  阿里巴巴移动事业群-高德    2000人以上 ['城南']








//input2
df_dataanalyst = reader('select * from dataanalyst')
merged = pd.merge(df_dataanalyst,df_company,on = 'companyId')
merged.head()



//output2
    positionId  city    companyId   firstType   secondType  education   industryField   positionAdvantage   positionName    positionLables  salary  workYear    companyFullName companyLabelList    companyShortName    companySize businessZones
0   80307   深圳  6718    职能  高端职能职位  本科  社交网络,生活服务   业务分析,自由度高,项目有发展前景。  数据分析师   ['分析师', '数据分析', '数据']   8k-15k  1-3年    深圳市珍爱网信息技术有限公司  ['发展上升型', '朝阳行业', '创业氛围浓厚', '年终分红'] 珍爱网 2000人以上 ['南头', '科技园', '桂庙路口']
1   899950  深圳  6718    设计  用户研究    本科  社交网络,生活服务   大公司 福利好 团队棒 数据分析师(资源策略) ['分析师', '数据分析', '策略', '数据'] 8k-15k  1-3年    深圳市珍爱网信息技术有限公司  ['发展上升型', '朝阳行业', '创业氛围浓厚', '年终分红'] 珍爱网 2000人以上 ['南头', '科技园', '桂庙路口']
2   2424509 深圳  6718    技术  DBA 本科  社交网络,生活服务   技术氛围好,平台大   数据仓库    ['数据仓库', '数据']  12k-15k 3-5年    深圳市珍爱网信息技术有限公司  ['发展上升型', '朝阳行业', '创业氛围浓厚', '年终分红'] 珍爱网 2000人以上 ['南头', '科技园', '桂庙路口']
3   100561  北京  62  技术  DBA 本科  移动互联网,数据服务  过亿用户+优厚薪资期权+三餐+住房补  数据抓取和处理(高级)工程师  ['数据']  20k-40k 不限  北京字节跳动科技有限公司    ['扁平管理', '弹性工作', '大厨定制三餐', '就近租房补贴']    今日头条    2000人以上 ['双榆树', '大钟寺', '中关村']
4   468241  北京  62  技术  后端开发    本科  移动互联网,数据服务  高薪期权+免费三餐+就近租房补贴    大数据工程师  ['大数据', '数据']   20k-40k 1-3年    北京字节跳动科技有限公司    ['扁平管理', '弹性工作', '大厨定制三餐', '就近租房补贴']    今日头条    2000人以上 ['双榆树', '大钟寺', '中关村']








//input3
result = merged.groupby(['city','companyFullName']).count()['companyId'].reset_index()
result.head()



//output3
city    companyFullName companyId
0   上海  CMC Wiseme HK Limited   2
1   上海  Striking.ly, Inc.   1
2   上海  VIKI PRIVATE LIMITED    1
3   上海  万达信息科技有限公司  2
4   上海  上汽通用汽车金融有限责任公司  1








//input4
result.to_sql(name = 'newtable',con = 'mysql+pymysql://kuku:mysql1219@localhost:3306/data',
             if_exists = 'append',index= False)
 result.head()



//output4
city    companyFullName companyId
0   上海  CMC Wiseme HK Limited   2
1   上海  Striking.ly, Inc.   1
2   上海  VIKI PRIVATE LIMITED    1
3   上海  万达信息科技有限公司  2
4   上海  上汽通用汽车金融有限责任公司  1


添加成功,如图所示

你可能感兴趣的:(python基础-19-数据分析python——pandas——在mysql数据库添加表)