利用pandas對初創公司進行資料分析
資料來源
Kesci的CrunchBase 初創公司資料集
資料集內容
acquisitions.csv
: 初創公司被收購的記錄
acquisitions | 初創公司被收購的記錄 |
---|---|
company_permalink | |
company_name | |
company_category_list | |
company_country_code | |
company_state_code | |
company_region | |
company_city | |
acquirer_permalink | |
acquirer_name | 收購公司 |
acquirer_category_list | |
acquirer_country_code | |
acquirer_state_code | |
acquirer_region | |
acquirer_city | |
acquired_at | 收購日期 |
acquired_month | |
price_amount | 收購金額 |
price_currency_code | 收購結算單位 |
additions.csv
: 月度新增公司數目
companies.csv
: 公司資訊記錄
companies | 公司資訊記錄 |
---|---|
permalink | |
name | |
homepage_url | |
category_list | |
funding_total_usd | 總投資金額 |
status | |
country_code | |
state_code | |
region | |
city | |
funding_rounds | 投資輪數 |
founded_at | 成立日期 |
first_funding_at | 首次融資日期 |
last_funding_at | 末次融資日期 |
investments.csv
: 投資記錄
investments | 投資記錄 |
---|---|
company_permalink | |
company_name | |
company_category_list | |
company_country_code | |
company_state_code | |
company_region | |
company_city | |
investor_permalink | |
investor_name | |
investor_country_code | |
investor_state_code | |
investor_region | |
investor_city | |
funding_round_permalink | |
funding_round_type | 投資輪次型別 |
funding_round_code | 投資輪次型別程式碼 |
funded_at | 融資日期 |
raised_amount_usd | 融資金額 |
rounds.csv
: 投資輪次記錄
rounds | 投資輪次記錄 |
---|---|
company_permalink | |
company_name | |
company_category_list | |
company_country_code | |
company_state_code | |
company_region | |
company_city | |
funding_round_permalink | |
funding_round_type | 投資輪次型別 |
funding_round_code | 投資輪次型別程式碼 |
funded_at | 被投日期 |
raised_amount_usd | 被投金額 |
問題描述
1.VC在投資的時候有什麼樣的喜好?
2.初創公司的headquarter所在的城市,是否會影響其融資?
3.一般需要多久,初創公司可以完成上市或者被收購?
4.可否建立一個預測初創公司是否會被收購/完成上市的模型?
問題分析
1、VC投資的喜好
投資是追求回報的,嘗試從資料中發現出投資的偏好性。
根據5W2H法分析:
WHAT:投資事件
WHY:為什麼投資
WHEN:什麼時間投資、融資
WHERE:投資方地點、融資方地點
WHO:投資方,融資方
HOW:什麼樣的方式
HOW MUCH:投融資金額
對於VC投資偏好的分析,從出發點考慮。
投資是為了獲取更大的利益,也就是VC對企業進行投資,在未來將會獲得更大的收益。
獲取的利益包括,融資企業上市或者被收購,此時投資方獲得更大收益。
對於融資企業,屬性有:區域、行業、發展狀況、成立時長。
對於投資企業,屬性有:區域、行業、發展狀況、成立時長。
投資上涉及指標有:投資規模、投資輪次。
收益可以用融資企業被收購或上市時的估值來衡量。
因此需要看投資公司的相關投資資訊,用到investments.csv
。
①投資公司的企業區域分佈
和猜想相同,美國投資公司高達8000多家,佔據整體投資公司數量的58.06%,英國排到第2,佔7.10%,加拿大排佔3.24%,居第3,而中國位居第8,佔1.82%。
②投資公司的企業行業分佈
③投資公司對不同國家不同行業投資數量、規模的分佈
2、初創公司完成上市或者收購
完成上市或收購的時間距成立時間(或者首次被投時間)——建議按照年計算
完成上市或者收購的公司數量之間的關係
實現
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
path1 = "/home/kesci/input/cb_startup/acquisitions.csv"
path2 = "/home/kesci/input/cb_startup/additions.csv"
path3 = "/home/kesci/input/cb_startup/companies.csv"
path4 = "/home/kesci/input/cb_startup/investments.csv"
path5 = "/home/kesci/input/cb_startup/rounds.csv"
acquisitions = pd.read_csv(path1) # 初創公司被收購的記錄
additions = pd.read_csv(path2) # 月度新增公司數目
companies = pd.read_csv(path3) # 公司資訊記錄
investments = pd.read_csv(path4) # 投資記錄
rounds = pd.read_csv(path5) # 投資輪次記錄
1、資料集提供時間內,總投資規模與年份之間的關係
我們只需要將按年將投資規模統計,展示成折線圖即可。
這裡我們需要用到rounds 這個表即可。
# 先查看錶各列的型別
investments.info()
# 將funded_at轉換為時間格式,將raised_amount_usd轉換為數字格式
rounds.funded_at = pd.to_datetime(rounds.funded_at,format='%Y-%m-%d')
investments.raised_amount_usd = pd.to_numeric(investments.raised_amount_usd)
# 新建一列year
rounds['year'] = rounds.funded_at.apply(lambda rounds:rounds.year)
# 將每年的raised_amount_usd累加起來,按照年份分組(以億美元為單位)
invests = (rounds.raised_amount_usd.groupby(rounds.year).sum())/100000000
inv_f = pd.Series(invests)
# 在1990年以前的投資規模很小,從1990年起展示
inv_f.plot(title='投資規模隨年份變化', style='ko--', xlim=[1990,2015])
plt.xlabel('年份/年')
plt.ylabel('投資規模/億美元')
具體見kesci
相關推薦
利用pandas對初創公司進行資料分析
資料來源 Kesci的CrunchBase 初創公司資料集 資料集內容 acquisitions.csv: 初創公司被收購的記錄 acquisitions 初創公司被收購的記錄 company_permalink company_name
【自然語言處理】利用LDA對希拉里郵件進行主題分析
首先是讀取資料集,並將csv中ExtractedBodyText為空的給去除掉 import pandas as pd import re import os dir_path=os.path.dirname(os.path.abspath(__file__)) data_path=dir_path+"/
資料基礎---《利用Python進行資料分析·第2版》第12章 pandas高階應用
之前自己對於numpy和pandas是要用的時候東學一點西一點,直到看到《利用Python進行資料分析·第2版》,覺得只看這一篇就夠了。非常感謝原博主的翻譯和分享。 前面的章節關注於不同型別的資料規整流程和NumPy、pandas與其它庫的特點。隨著時間的發展,pandas發展出了更多適
資料基礎---《利用Python進行資料分析·第2版》第5章 pandas入門
之前自己對於numpy和pandas是要用的時候東學一點西一點,直到看到《利用Python進行資料分析·第2版》,覺得只看這一篇就夠了。非常感謝原博主的翻譯和分享。 pandas是本書後續內容的首選庫。它含有使資料清洗和分析工作變得更快更簡單的資料結構和操作工具。pandas經常和其它工
利用python對2012美國大選進行資料分析(四,時間處理)
1,str轉datetime 我們可以使用pd.to_datetime(series,format='%Y%m%d')將字元轉化為日期,格式為年月日。 data_vs['time'] = pd.to_datetime(data_vs['contb_receipt_dt']
利用python進行資料分析-----第二篇 Numpy 陣列 向量計算 索引 切片 轉置 軸對換 檔案輸入輸出
目錄 布林值索引 花式索引 其他函式 排序 線性代數 隨機數生成 Numpy簡介 NumPy是一種通用的陣列處理軟體包,旨在有效地操縱任意記錄的大型多維陣列,而不會為小
利用Pandas進行資料分析
原文:https://www.dataquest.io/blog/pandas-python-tutorial/ 作者:Vik Paruchuri 譯者:linkcheng Python 是進行資料分析的絕佳語言,主要原因是以資料為中心的 Python 包的奇妙生態系統。Pandas 就是其
利用 Python 進行資料分析(十二)pandas:資料合併
原文地址 pandas 提供了三種主要方法可以對資料進行合併: pandas.merge()方法:資料庫風格的合併;pandas.concat()方法:軸向連線,即沿著一條軸將多個物件堆疊到一起;例項方法combine_first()方法:合併重疊資料。 pandas
利用python進行資料分析-pandas入門2
1.索引物件 pandas的索引物件負責管理軸標籤和其它元資料。構建Series或DataFrame時,所用到的任何陣列或其它序列的標籤都會被轉換成一個Index obj=Series(range(3
python利用pandas對多個資料夾裡的excel進行合併,切割
程式碼如下 import os import pandas as pd df = pd.DataFrame(columns=['流水號','事件名稱','本方戶名','對方戶名','流水時間','操作員','交易額','流水標誌','扇區號']) l = []
利用Python進行資料分析(15) pandas基礎: 字串操作
字串物件方法 split()方法拆分字串: strip()方法去掉空白符和換行符: split()結合strip()使用: "+"符號可以將多個字串連線起來: join()方法也是連線字串,比較它和"+"符號的區別: in關鍵字判斷一個字串是否包含在另一個字串中: index()方法
利用python進行資料分析學習筆記-Pandas篇
無論如何,堅持啊! pandas的資料結構 Series obj = Series([]) #產生一個Series obj = Series({})#可以通過引入一個dict來建立一個Series 包括values和index兩個屬性,而valu
《利用Python進行資料分析》第五章 pandas的基本功能
介紹操作Series和DataFrame中的資料的基本功能 重新索引 pandas物件的一個重要方法是reindex,其作用是建立一個適應新索引的新物件。以之前的一個簡單示例來說 In [1]: from pandas import Series,Da
利用python進行資料分析-pandas入門3
1.函式應用和對映 NumPy的ufuncs(元素級陣列方法)也可用於操作pandas物件 frame=DataFrame(np.random.randn(4,3),columns=list('bde
利用Pandas進行資料分析(3)——統計、處理缺失值、層次化索引
注:此係列參考了樑斌老師的課件和《利用Python進行資料分析》一書。 import numpy as np import pandas as pd from pandas import DataFrame,Series df_obj
《利用Python進行資料分析》第五章-pandas的資料結構介紹
pandas的資料結構介紹 要使用pandas,你首先就得熟悉它的兩個主要資料結構:Series和DataFrame。雖然它們並不能解決所有問題,但它們為大多數應用提供了一種可靠的、易於使用的基礎。 In [1]: from pandas import
利用python進行資料分析(第二版) pdf下載
適讀人群 :適合剛學Python的資料分析師或剛學資料科學以及科學計算的Python程式設計者。 閱讀本書可以獲得一份關於在Python下操作、處理、清洗、規整資料集的完整說明。本書第二版針對Python 3.6進行了更新,並增加實際案例向你展示如何高效地解決一系列資料分析問題。你將在閱讀
《利用Python進行資料分析》學習記錄
第8章249頁 原語句:party_counts = pd.crosstab(tips.day, tips.size) 現在的pandas似乎有個size屬性,就是計算資料的大小,而不會返回那一列具體的資料,比如這裡tips這個csv資料,其裡面包含一列size資料,現在來執行這句語句的話,
資料基礎---《利用Python進行資料分析·第2版》第6章 資料載入、儲存與檔案格式
之前自己對於numpy和pandas是要用的時候東學一點西一點,直到看到《利用Python進行資料分析·第2版》,覺得只看這一篇就夠了。非常感謝原博主的翻譯和分享。 訪問資料是使用本書所介紹的這些工具的第一步。我會著重介紹pandas的資料輸入與輸出,雖然別的庫中也有不少以此為目的的工具