中国城市资本流动问题探索

中国城市资本流动问题探索
数据:全国2013-2016所有企业间的投融资信息数据

PS:如果各位有疑问的话,可以留下微信,我看到会第一时间加的,以后可以多多交流

1、项目需求

1、查看全国城际控股型投资关系
2、2013-2016年全国跨城市资本流动情况
3、深挖跨城市资本流动:钱从哪里来,到哪里去?

2、实现思路

1、筛选出同城投资和跨城投资top20查看数据情况得出初步结论,筛选不同年份的投资情况再得到进一步结论
2、匹配对应城市的经纬度,通过gephi查看跨城投资关系图,再通过echart绘制跨城投资关系图查看资本流动情况
3、查看近四年投资top10城市和融资top10城市,查看北上深和其他阵营资本变化趋势情况

3、实现步奏

1.1、导入模块,读取数据

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import os
import warnings
warnings.filterwarnings('ignore') 
# 不发出警告
from bokeh.io import output_file
output_file('项目12.html')
from bokeh.plotting import figure,show
# 导入图表绘制、图标展示模块
from bokeh.models.annotations import Span
from bokeh.models.annotations import BoxAnnotation
from bokeh.layouts import gridplot
from bokeh.models import ColumnDataSource
from bokeh.models import HoverTool
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
from matplotlib import style


os.chdir('C:\\Users\\Administrator\\Desktop\\项目资料\\项目12中国城市资本流动问题探索')
df = pd.read_excel('data.xlsx')

1.2、清洗和筛选同城和跨城投资top20城市,绘制直方图查看

df1_tc = df[df['投资方所在城市']==df['融资方所在城市']]
df1_btc = df[df['投资方所在城市']!=df['融资方所在城市']]

df1_tc_sum = df1_tc.groupby(['投资方所在城市','融资方所在城市']).sum()
df1_btc_sum = df1_btc.groupby(['投资方所在城市','融资方所在城市']).sum()
df1_tc_sum = df1_tc_sum.sort_values('投资企业对数',ascending = False)[:20]
df1_btc_sum = df1_btc_sum.sort_values('投资企业对数',ascending = False)[:20]

del df1_tc_sum['年份']
del df1_btc_sum['年份']
df1_tc_sum.plot(kind = 'bar',figsize = (15,6),color = 'red',grid = True)
df1_btc_sum.plot(kind = 'bar',figsize = (15,6),color = 'g',grid = True)

在这里插入图片描述

在这里插入图片描述
结论:
①城市更偏好同城投资,同城的投资要明显大于跨城投资
②同城投资北上深占据top3,深圳>北京>上海
③跨城投资集中在同城top3城市群周边相互投资

1.3、筛选不同年份投资情况,绘图展示

df1_tc_sum1 = df1_tc.groupby(['投资方所在城市','融资方所在城市','年份']).sum()
df1_btc_sum1 = df1_btc.groupby(['投资方所在城市','融资方所在城市','年份']).sum()
df1_tc_sum1 = df1_tc_sum1.sort_values('投资企业对数',ascending = False)
df1_btc_sum1 = df1_btc_sum1.sort_values('投资企业对数',ascending = False)
df1_tc_sum1.reset_index(inplace = True)
df1_btc_sum1.reset_index(inplace = True)

def f1(i):
    data1 = df1_tc_sum1[df1_tc_sum1['年份']==i][:20]
    data1.index = data1['投资方所在城市']+'-'+data1['投资方所在城市']
    data1 = data1['投资企业对数']
    data2 = df1_btc_sum1[df1_btc_sum1['年份']==i][:20]
    data2.index = data2['投资方所在城市']+'-'+data2['投资方所在城市']
    data2 = data2['投资企业对数']
    return(data1,data2)

fig,axes = plt.subplots(4,2,figsize = (16,20))
plt.subplots_adjust(wspace = 0.2, hspace = 0.5)
f1(2013)[0].plot(kind = 'bar',color = 'blue',ax = axes[0,0],title = '同城投资-2013',ylim = [0,40000])
f1(2013)[1].plot(kind = 'bar',color = 'r',ax = axes[0,1],title = '跨城投资-2013',ylim = [0,3000])
f1(2014)[0].plot(kind = 'bar',color = 'blue',ax = axes[1,0],title = '同城投资-2014',ylim = [0,40000])
f1(2014)[1].plot(kind = 'bar',color = 'r',ax = axes[1,1],title = '跨城投资-2014',ylim = [0,3000])
f1(2015)[0].plot(kind = 'bar',color = 'blue',ax = axes[2,0],title = '同城投资-2015',ylim = [0,40000])
f1(2015)[1].plot(kind = 'bar',color = 'r',ax = axes[2,1],title = '跨城投资-2015',ylim = [0,3000])
f1(2016)[0].plot(kind = 'bar',color = 'blue',ax = axes[3,0],title = '同城投资-2016',ylim = [0,40000])
f1(2015)[1].plot(kind = 'bar',color = 'r',ax = axes[3,1],title = '跨城投资-2015',ylim = [0,3000])

在这里插入图片描述
在这里插入图片描述

结论:
① 每年“同城投资”、“跨城投资”均呈上升趋势
② 同城投资中,头部城市仍为北上深,且随着时间推移,越来越拉开和其他城市的差距
③ 跨城投资中,投资关系较强的城市为“北京-上海” > “北京-深圳” > “上海-深圳” 一线城市之间投资力度较大

2.1、匹配地理信息坐标系,合并数据并到出

df2_city = pd.read_excel('中国城市代码对照表.xlsx')[['城市名称','经度','纬度']]
df2_yc = df1_btc.sort_values('投资企业对数',ascending = False)
df2_yc['value'] = (df2_yc['投资企业对数'] - df2_yc['投资企业对数'].min())/(df2_yc['投资企业对数'].max() - df2_yc['投资企业对数'].min())
df2_edge = df2_yc[['投资方所在城市','融资方所在城市','value']]
df2_edge.columns = ['source','target','weight']

df2_edge.to_csv('df2_edge.csv',encoding='gbk',index = False)
df2_id = df1_btc.groupby('投资方所在城市').sum()
df2_id20 = df2_id.sort_values('投资企业对数',ascending = False)[:20]
df2_id20['city'] = df2_id20.index

df2_id_top20 = df2_id.merge(df2_id20,left_index = True,right_index = True,how = 'outer')
df2_id_top20.reset_index(inplace = True)
df2_nodes = df2_id_top20[['投资方所在城市','city']]
df2_nodes.columns = ['Id','Label']
df2_nodes.to_csv('df2_nodes.csv',encoding='gbk',index = False)


df2_btc = df1_btc.groupby(['投资方所在城市','融资方所在城市']).sum()
df2_btc.reset_index(inplace = True)
df2_q2 = df2_btc.merge(df2_city,left_on = '投资方所在城市',right_on = '城市名称')
df2_q2 = df2_q2.merge(df2_city,left_on = '融资方所在城市',right_on = '城市名称')
df2_q2 = df2_q2[['投资方所在城市','融资方所在城市','投资企业对数','经度_x','纬度_x','经度_y','纬度_y']]
df2_q2.to_csv('df2_q2.csv',index = False,encoding='gbk')

2.2、 通过gephi查看top20资本关系图
在这里插入图片描述
2.3.通过匹配的经纬度信息在qgis上处理完毕用echart输出资本流动动态图
在这里插入图片描述

结论:
① 通过资本流动关系图可以得出北上深是主力资本点,广州、杭州、武汉、成都等准一线城市次之。
② 通过资本流动动态图可以看到地图上明显的一个钻石结构,京、津地区,长三角、珠三角地区形成三角网络在再于成都形钻石网络,而这四个地区占了全国资本流动的9成资本。

3.1、查看跨城投资top10和融资top10数据

df3_tc = df1_btc.groupby('投资方所在城市').sum()
df3_tc = df3_tc.sort_values('投资企业对数',ascending = False)
df3_tc10 = df3_tc['投资企业对数'][:10]

df3_yc = df1_btc.groupby('融资方所在城市').sum()
df3_yc = df3_yc.sort_values('投资企业对数',ascending = False)
df3_yc10 = df3_yc['投资企业对数'][:10]
plt.figure()
df3_tc10.plot(kind = 'bar',figsize = (15,6),title = '投资城市TOP10',color = 'b',alpha = 0.7,rot = 0,fontsize = 14,edgecolor = 'k')
plt.figure()
df3_yc10.plot(kind = 'bar',title = '融资城市TOP10',figsize = (15,6),color = 'r',alpha = 0.7,rot = 0,fontsize = 14)

在这里插入图片描述
在这里插入图片描述
结论:
① 通过投资笔数排名TOP10可以看出,北上深依旧包揽前三,而且体量远超其他城市,说明投资命脉还是在这三个城市,杭州第四成为准一线城市,而广州第五说已经被三大城市远远甩在后面
② 通过融资笔数城市排名TOP10”可以看出三大城市毋庸置疑还是包揽前三,但是这里看到了嘉兴这个平时不显眼的城市位列第7,说明现在投资者更青睐这座城市,将有不错的发展,然而现在嘉兴确实是一个后起之秀

3.2、标记不同阵营的情况后通过qgis查看北上深对应资本投资地区情况。

   def f3(year):
        df3_dict = {}
        df3_yc = df1_btc.groupby(['融资方所在城市','投资方所在城市','年份']).sum().reset_index()
        df3_rz = df3_yc[df3_yc['年份']==year]
        df3_rzmax = df3_rz[['融资方所在城市','投资企业对数']].groupby('融资方所在城市').max().reset_index()
        df3_mg = df3_rzmax.merge(df3_rz,on = ['融资方所在城市','投资企业对数'],how = 'left')
        df3_mg['阵营'] = 0
        df3_mg['阵营'][(df3_mg['投资方所在城市']=='北京')|
            (df3_mg['投资方所在城市']=='上海')|
            (df3_mg['投资方所在城市']=='深圳')] = 1
        df3_dict['北上深阵营'] = df3_mg['阵营'].value_counts()[1]
        df3_dict['本地阵营'] = df3_mg['阵营'].value_counts()[0]
        df3_jg = df3_mg.merge(df2_city,left_on = '融资方所在城市',right_on ='城市名称')
        df3_jg = df3_jg[['投资方所在城市','融资方所在城市','投资企业对数','阵营','经度','纬度']] 
        return(df3_jg,df3_dict)
    df3_year = pd.DataFrame([f3(2013)[1],f3(2014)[1],f3(2015)[1],f3(2016)[1]],index = [2013,2014,2015,2016])
    df3_year['北上深占比'] =df3_year['北上深阵营']/(df3_year['北上深阵营']+df3_year['本地阵营'])
    df3_year[['北上深阵营','本地阵营']].plot(kind = 'bar',stacked=True,figsize =(10,5),
            ylim = [0,600],width = 0.4,rot = 0,grid = True)
    
    f3(2013)[0].to_csv('2013data.csv',index = False,encoding = 'gbk')
    f3(2014)[0].to_csv('2014data.csv',index = False,encoding = 'gbk')
    f3(2015)[0].to_csv('2015data.csv',index = False,encoding = 'gbk')
    f3(2016)[0].to_csv('2016data.csv',index = False,encoding = 'gbk')

在这里插入图片描述

2013投资地区
在这里插入图片描述
2014投资地区
在这里插入图片描述
2015投资地区
在这里插入图片描述
2016投资地区
在这里插入图片描述

结论:
北上深每年占比越来越高,其他阵营越来越低
北上深的势力范围逐年争多,切逐年向内蒙东北地区扩散,并逐年深入到三四线城市

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值