美国选民喜好#
1、賽前準備
1.1 前言
本次賽事由開源學習組織Datawhale主辦,主要帶領(lǐng)學習者利用Python進行數(shù)據(jù)分析以及數(shù)據(jù)可視化,包含數(shù)據(jù)集的處理、數(shù)據(jù)探索與清晰、數(shù)據(jù)分析、數(shù)據(jù)可視化四部分,利用pandas、matplotlib、wordcloud等第三方庫帶大家玩轉(zhuǎn)數(shù)據(jù)分析~還有豐富禮品等你來領(lǐng)取哦~
學習賽事地址:https://tianchi.aliyun.com/competition/entrance/531837/introduction
1.2 數(shù)據(jù)集來源介紹
所有候選人信息
該文件為每個候選人提供一份記錄,并顯示候選人的信息、總收入、從授權(quán)委員會收到的轉(zhuǎn)賬、付款總額、給授權(quán)委員會的轉(zhuǎn)賬、庫存現(xiàn)金總額、貸款和債務(wù)以及其他財務(wù)匯總信息。
數(shù)據(jù)字段描述詳細:https://www.fec.gov/campaign-finance-data/all-candidates-file-description/
關(guān)鍵字段說明
- CAND_ID 候選人ID
- CAND_NAME 候選人姓名
- CAND_PTY_AFFILIATION 候選人黨派
數(shù)據(jù)來源:https://www.fec.gov/files/bulk-downloads/2020/weball20.zip
候選人委員會鏈接信息
該文件顯示候選人的身份證號碼、候選人的選舉年份、聯(lián)邦選舉委員會選舉年份、委員會識別號、委員會類型、委員會名稱和鏈接標識號。
信息描述詳細:https://www.fec.gov/campaign-finance-data/candidate-committee-linkage-file-description/
關(guān)鍵字段說明
- CAND_ID 候選人ID
- CAND_ELECTION_YR 候選人選舉年份
- CMTE_ID 委員會ID
數(shù)據(jù)來源:https://www.fec.gov/files/bulk-downloads/2020/ccl20.zip
個人捐款檔案信息
【注意】由于文件較大,本數(shù)據(jù)集只包含2020.7.22-2020.8.20的相關(guān)數(shù)據(jù),如果需要更全數(shù)據(jù)可以通過數(shù)據(jù)來源中的地址下載。
該文件包含有關(guān)收到捐款的委員會、披露捐款的報告、提供捐款的個人、捐款日期、金額和有關(guān)捐款的其他信息。
信息描述詳細:https://www.fec.gov/campaign-finance-data/contributions-individuals-file-description/
關(guān)鍵字段說明
- CMTE_ID 委員會ID
- NAME 捐款人姓名
- CITY 捐款人所在市
- State 捐款人所在州
- EMPLOYER 捐款人雇主/公司
- OCCUPATION 捐款人職業(yè)
數(shù)據(jù)來源:https://www.fec.gov/files/bulk-downloads/2020/indiv20.zip
1.3 需要提前安裝的包
# 安裝詞云處理包wordcloud !pip install wordcloud --user Looking in indexes: https://mirrors.aliyun.com/pypi/simple Requirement already satisfied: wordcloud in /data/nas/workspace/envs/python3.6/site-packages (1.8.1) Requirement already satisfied: numpy>=1.6.1 in /opt/conda/lib/python3.6/site-packages (from wordcloud) (1.19.4) Requirement already satisfied: matplotlib in /opt/conda/lib/python3.6/site-packages (from wordcloud) (3.3.3) Requirement already satisfied: pillow in /opt/conda/lib/python3.6/site-packages (from wordcloud) (8.0.1) Requirement already satisfied: python-dateutil>=2.1 in /opt/conda/lib/python3.6/site-packages (from matplotlib->wordcloud) (2.8.1) Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.3 in /opt/conda/lib/python3.6/site-packages (from matplotlib->wordcloud) (2.4.7) Requirement already satisfied: kiwisolver>=1.0.1 in /opt/conda/lib/python3.6/site-packages (from matplotlib->wordcloud) (1.2.0) Requirement already satisfied: cycler>=0.10 in /opt/conda/lib/python3.6/site-packages (from matplotlib->wordcloud) (0.10.0) Requirement already satisfied: six in /opt/conda/lib/python3.6/site-packages (from cycler>=0.10->matplotlib->wordcloud) (1.15.0)1.4 需要提前下載好數(shù)據(jù)集
【注意】如果你只是在天池技術(shù)圈看到本文,你需要先查看賽事指南。
通過賽事指南提示操作你可以成功Fork賽事論壇的baseline到你的天池實驗室,并點擊編輯按鈕成功跳轉(zhuǎn)到了DSW在線編程。
在進行數(shù)據(jù)處理前,你需要點擊DSW左側(cè)天池tab,下載本案例數(shù)據(jù)集2020_US_President_political_contributions,后續(xù)步驟才能正確執(zhí)行。
2、數(shù)據(jù)處理
進行數(shù)據(jù)處理前,我們需要知道我們最終想要的數(shù)據(jù)是什么樣的,因為我們是想分析候選人與捐贈人之間的關(guān)系,所以我們想要一張數(shù)據(jù)表中有捐贈人與候選人一一對應(yīng)的關(guān)系,所以需要將目前的三張數(shù)據(jù)表進行一一關(guān)聯(lián),匯總到需要的數(shù)據(jù)。
2.1 將委員會和候選人一一對應(yīng),通過CAND_ID關(guān)聯(lián)兩個表
由于候選人和委員會的聯(lián)系表中無候選人姓名,只有候選人ID(CAND_ID),所以需要通過CAND_ID從候選人表中獲取到候選人姓名,最終得到候選人與委員會聯(lián)系表ccl。
# 導入相關(guān)處理包 import pandas as pd # 讀取候選人信息,由于原始數(shù)據(jù)沒有表頭,需要添加表頭 #***txt文本轉(zhuǎn)換成csv candidates = pd.read_csv("weball20.txt", sep = '|',names=['CAND_ID','CAND_NAME','CAND_ICI','PTY_CD','CAND_PTY_AFFILIATION','TTL_RECEIPTS','TRANS_FROM_AUTH','TTL_DISB','TRANS_TO_AUTH','COH_BOP','COH_COP','CAND_CONTRIB','CAND_LOANS','OTHER_LOANS','CAND_LOAN_REPAY','OTHER_LOAN_REPAY','DEBTS_OWED_BY','TTL_INDIV_CONTRIB','CAND_OFFICE_ST','CAND_OFFICE_DISTRICT','SPEC_ELECTION','PRIM_ELECTION','RUN_ELECTION','GEN_ELECTION','GEN_ELECTION_PRECENT','OTHER_POL_CMTE_CONTRIB','POL_PTY_CONTRIB','CVG_END_DT','INDIV_REFUNDS','CMTE_REFUNDS']) # 讀取候選人和委員會的聯(lián)系信息 ccl = pd.read_csv("ccl.txt", sep = '|',names=['CAND_ID','CAND_ELECTION_YR','FEC_ELECTION_YR','CMTE_ID','CMTE_TP','CMTE_DSGN','LINKAGE_ID']) # 關(guān)聯(lián)兩個表數(shù)據(jù) ccl = pd.merge(ccl,candidates) # 提取出所需要的列 ccl = pd.DataFrame(ccl, columns=[ 'CMTE_ID','CAND_ID', 'CAND_NAME','CAND_PTY_AFFILIATION'])數(shù)據(jù)字段說明:
- CMTE_ID:委員會ID
- CAND_ID:候選人ID
- CAND_NAME:候選人姓名
- CAND_PTY_AFFILIATION:候選人黨派
| C00697789 | H0AL01055 | CARL, JERRY LEE, JR | REP |
| C00701557 | H0AL01063 | LAMBERT, DOUGLAS WESTLEY III | REP |
| C00701409 | H0AL01071 | PRINGLE, CHRISTOPHER PAUL | REP |
| C00703066 | H0AL01089 | HIGHTOWER, BILL | REP |
| C00708867 | H0AL01097 | AVERHART, JAMES | DEM |
| C00710947 | H0AL01105 | GARDNER, KIANI A | DEM |
| C00722512 | H0AL01121 | CASTORANI, JOHN | REP |
| C00725069 | H0AL01139 | COLLINS, FREDERICK G. RICK' | DEM |
| C00462143 | H0AL02087 | ROBY, MARTHA | REP |
| C00493783 | H0AL02087 | ROBY, MARTHA | REP |
2.2 將候選人和捐贈人一一對應(yīng),通過CMTE_ID關(guān)聯(lián)兩個表
核心目的:通過CMTE_ID將目前處理好的候選人和委員會關(guān)系表與人捐款檔案表進行關(guān)聯(lián),得到候選人==捐贈人的對應(yīng)聯(lián)系表cil。
# 讀取個人捐贈數(shù)據(jù),由于原始數(shù)據(jù)沒有表頭,需要添加表頭 # 提示:讀取本文件大概需要5-10s itcont = pd.read_csv('itcont_2020_20200722_20200820.txt', sep='|',names=['CMTE_ID','AMNDT_IND','RPT_TP','TRANSACTION_PGI','IMAGE_NUM','TRANSACTION_TP','ENTITY_TP','NAME','CITY','STATE','ZIP_CODE','EMPLOYER','OCCUPATION','TRANSACTION_DT','TRANSACTION_AMT','OTHER_ID','TRAN_ID','FILE_NUM','MEMO_CD','MEMO_TEXT','SUB_ID']) # 將候選人與委員會關(guān)系表ccl和個人捐贈數(shù)據(jù)表itcont合并,通過 CMTE_ID c_itcont = pd.merge(ccl,itcont)#只能通過 CMTE_ID這項合并?? # 提取需要的數(shù)據(jù)列 c_itcont = pd.DataFrame(c_itcont, columns=[ 'CAND_NAME','NAME', 'STATE','EMPLOYER','OCCUPATION','TRANSACTION_AMT', 'TRANSACTION_DT','CAND_PTY_AFFILIATION'])數(shù)據(jù)說明
- CAND_NAME – 接受捐贈的候選人姓名
- NAME – 捐贈人姓名
- STATE – 捐贈人所在州
- EMPLOYER – 捐贈人所在公司
- OCCUPATION – 捐贈人職業(yè)
- TRANSACTION_AMT – 捐贈數(shù)額(美元)
- TRANSACTION_DT – 收到捐款的日期
- CAND_PTY_AFFILIATION – 候選人黨派
| MORGAN, JOSEPH DAVID | MARTIN, WILLIAM II | AZ | RETIRED | RETIRED | 100 | 7242020 | REP |
| MORGAN, JOSEPH DAVID | RODRIGUEZ, GERARDO | AZ | VA HOSPITAL | LAB TECH | 40 | 7242020 | REP |
| MORGAN, JOSEPH DAVID | RODRIGUEZ, GERARDO | AZ | VA HOSPITAL | LAB TECH | 40 | 7312020 | REP |
| WOOD, DANIEL | HOPKINS, RICHARD | AZ | POWERS-LEAVITT | INSURANCE AGENT | 300 | 8102020 | REP |
| WOOD, DANIEL | PENDLETON, DIANE | AZ | UNEMPLOYED | NaN | 500 | 8072020 | REP |
| WOOD, DANIEL | PREVATT, WILLIAM | AZ | SELF-EMPLOYED | DVM | 500 | 7312020 | REP |
| WOOD, DANIEL | HARDING, DOUG | AZ | MICROSURE | OPERATIONS MANAGER | 2800 | 8102020 | REP |
| WOOD, DANIEL | HARDING, MARI | AZ | NaN | NaN | 1400 | 8152020 | REP |
| WOOD, DANIEL | HEDGER, CYNTHIA | TX | NaN | NaN | 200 | 7312020 | REP |
| HUANG, PEGGY | HUANG - PERSONAL FUNDS, PEGGY | CA | OFFICE OF THE ATTORNEY GENERAL | DEPUTY ATTORNEY GENERAL | 2600 | 7252020 | REP |
3、數(shù)據(jù)探索與清洗
進過數(shù)據(jù)處理部分,我們獲得了可用的數(shù)據(jù)集,現(xiàn)在我們可以利用調(diào)用shape屬性查看數(shù)據(jù)的規(guī)模,調(diào)用info函數(shù)查看數(shù)據(jù)信息,調(diào)用describe函數(shù)查看數(shù)據(jù)分布。
# 查看數(shù)據(jù)規(guī)模 多少行 多少列 c_itcont.shape (756205, 8) # 查看整體數(shù)據(jù)信息,包括每個字段的名稱、非空數(shù)量、字段的數(shù)據(jù)類型 c_itcont.info() <class 'pandas.core.frame.DataFrame'> Int64Index: 756205 entries, 0 to 756204 Data columns (total 8 columns):# Column Non-Null Count Dtype --- ------ -------------- ----- 0 CAND_NAME 756205 non-null object1 NAME 756205 non-null object2 STATE 756160 non-null object3 EMPLOYER 737413 non-null object4 OCCUPATION 741294 non-null object5 TRANSACTION_AMT 756205 non-null int64 6 TRANSACTION_DT 756205 non-null int64 7 CAND_PTY_AFFILIATION 756205 non-null object dtypes: int64(2), object(6) memory usage: 51.9+ MB通過上面的探索我們知道目前數(shù)據(jù)集的一些基本情況,目前數(shù)據(jù)總共有756205行,8列,總占用內(nèi)存51.9+MB,STATE、EMPLOYER、OCCUPATION有缺失值,另外日期列目前為int64類型,需要進行轉(zhuǎn)換為str類型。(why???)
#空值處理,統(tǒng)一填充 NOT PROVIDED(未提供).inplace=True將原始數(shù)據(jù)一起改變 c_itcont['STATE'].fillna('NOT PROVIDED',inplace=True) c_itcont['EMPLOYER'].fillna('NOT PROVIDED',inplace=True) c_itcont['OCCUPATION'].fillna('NOT PROVIDED',inplace=True) # 對日期TRANSACTION_DT列進行處理 c_itcont['TRANSACTION_DT'] = c_itcont['TRANSACTION_DT'] .astype(str) # 將日期格式改為年月日 7242020 ***** c_itcont['TRANSACTION_DT'] = [i[3:7]+i[0]+i[1:3] for i in c_itcont['TRANSACTION_DT'] ] # 再次查看數(shù)據(jù)信息 c_itcont.info() <class 'pandas.core.frame.DataFrame'> Int64Index: 756205 entries, 0 to 756204 Data columns (total 8 columns):# Column Non-Null Count Dtype --- ------ -------------- ----- 0 CAND_NAME 756205 non-null object1 NAME 756205 non-null object2 STATE 756205 non-null object3 EMPLOYER 756205 non-null object4 OCCUPATION 756205 non-null object5 TRANSACTION_AMT 756205 non-null int64 6 TRANSACTION_DT 756205 non-null object7 CAND_PTY_AFFILIATION 756205 non-null object dtypes: int64(1), object(7) memory usage: 51.9+ MB # 查看數(shù)據(jù)前3行 c_itcont.head(3)| MORGAN, JOSEPH DAVID | MARTIN, WILLIAM II | AZ | RETIRED | RETIRED | 100 | 2020724 | REP |
| MORGAN, JOSEPH DAVID | RODRIGUEZ, GERARDO | AZ | VA HOSPITAL | LAB TECH | 40 | 2020724 | REP |
| MORGAN, JOSEPH DAVID | RODRIGUEZ, GERARDO | AZ | VA HOSPITAL | LAB TECH | 40 | 2020731 | REP |
| 7.562050e+05 |
| 1.504307e+02 |
| 2.320452e+03 |
| -5.600000e+03 |
| 2.000000e+01 |
| 3.500000e+01 |
| 1.000000e+02 |
| 1.500000e+06 |
4、數(shù)據(jù)分析
# 計算每個黨派的所獲得的捐款總額,然后排序,取前十位 c_itcont.groupby("CAND_PTY_AFFILIATION").sum().sort_values("TRANSACTION_AMT",ascending=False).head(10)#升序假| 75961730 |
| 37170653 |
| 328802 |
| 169202 |
| 76825 |
| 18607 |
| 11256 |
| 10195 |
| 4117 |
| 3250 |
| 68111142 |
| 16594982 |
| 9912465 |
| 6939209 |
| 3451916 |
| 606832 |
| 505446 |
| 467738 |
| 345959 |
| 258221 |
獲得捐贈最多的黨派有DEM(民主黨)、REP(共和黨),分別對應(yīng)BIDEN, JOSEPH R JR(拜登)和TRUMP, DONALD J.(特朗普),從我們目前分析的2020.7.22-2020.8.20這一個月的數(shù)據(jù)來看,在選民的捐贈數(shù)據(jù)中拜登代表的民主黨完勝特朗普代表的共和黨,由于完整數(shù)據(jù)量過大,所以沒有對所有數(shù)據(jù)進行匯總分析,因此也不能確定11月大選公布結(jié)果就一定是拜登當選
# 查看不同職業(yè)的人捐款的總額,然后排序,取前十位 c_itcont.groupby('OCCUPATION').sum().sort_values("TRANSACTION_AMT",ascending=False).head(10)| 24436214 |
| 18669950 |
| 5089355 |
| 4443569 |
| 3519109 |
| 3295595 |
| 1647033 |
| 1565976 |
| 1481260 |
| 1467865 |
從捐款人的職業(yè)這個角度分析,我們會發(fā)現(xiàn)NOT EMPLOYED(自由職業(yè))的總捐贈額是最多,通過查看每個職業(yè)捐贈的人數(shù)來看,我們就會發(fā)現(xiàn)是因為NOT EMPLOYED(自由職業(yè))人數(shù)多的原因,另外退休人員捐款人數(shù)也特別多,所以捐款總數(shù)對應(yīng)的也多,其他比如像:律師、創(chuàng)始人、醫(yī)生、顧問、教授、主管這些高薪人才雖然捐款總?cè)藬?shù)少,但是捐款總金額也占據(jù)了很大比例。
# 每個州獲捐款的總額,然后排序,取前五位 c_itcont.groupby('STATE').sum().sort_values("TRANSACTION_AMT",ascending=False).head(5)| 19999115 |
| 11468537 |
| 8128789 |
| 8101871 |
| 5187957 |
最后查看每個州的捐款總金額,我們會發(fā)現(xiàn)CA(加利福利亞)、NY(紐約)、FL(弗羅里達)這幾個州的捐款是最多的,在捐款人數(shù)上也是在Top端,另一方面也凸顯出這些州的經(jīng)濟水平發(fā)達。
大家也可以通過數(shù)據(jù)查看下上面列舉的高端職業(yè)在各州的分布情況,進行進一步的分析探索。
4、數(shù)據(jù)可視化
首先導入相關(guān)Python庫
import matplotlib.pyplot as plt %matplotlib inline# 為了使matplotlib圖形能夠內(nèi)聯(lián)顯示 from wordcloud import WordCloud,ImageColorGenerator# 導入詞云庫4.1 按州總捐款數(shù)和總捐款人數(shù)柱狀圖
# 各州總捐款數(shù)可視化 st_amt = c_itcont.groupby('STATE').sum().sort_values("TRANSACTION_AMT",ascending=False)[:10]#各州總捐款,逆序,取錢前10-得序列 st_amt=pd.DataFrame(st_amt, columns=['TRANSACTION_AMT'])#序列包裝成數(shù)據(jù)框----奇妙的橫坐標標簽?zāi)J st_amt.plot(kind='bar') <AxesSubplot:xlabel='STATE'>[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-wRAxcXmd-1618065234556)(output_40_1.png)]
4.2 各州捐款總?cè)藬?shù)可視化
# 各州捐款總?cè)藬?shù)可視化,取前10個州的數(shù)據(jù) st_amt = c_itcont.groupby('STATE').size().sort_values(ascending=False).head(10) st_amt.plot(kind='bar') <AxesSubplot:xlabel='STATE'>[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-VT2J5kfZ-1618065234559)(output_42_1.png)]
4.3 熱門候選人拜登在各州的獲得的捐贈占比
# 從所有數(shù)據(jù)中取出支持拜登的數(shù)據(jù) biden = c_itcont[c_itcont['CAND_NAME']=='BIDEN, JOSEPH R JR']#把選了拜登的記錄全單獨拎出來 # 統(tǒng)計各州對拜登的捐款總數(shù) biden_state = biden.groupby('STATE').sum().sort_values("TRANSACTION_AMT", ascending=False).head(10) # 餅圖可視化各州捐款數(shù)據(jù)占比 biden_state.plot.pie(figsize=(10, 10),autopct='%0.2f%%',subplots=True)#subplots=True不寫畫不出圖 array([<AxesSubplot:ylabel='TRANSACTION_AMT'>], dtype=object)[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-ZUXnGsek-1618065234564)(output_44_1.png)]
4.3 總捐最多的候選人捐贈者詞云圖
通過數(shù)據(jù)分析中獲得捐贈總額前三的候選人統(tǒng)計中可以看出拜登在2020.7.22-2020.8.20這期間獲得捐贈的總額是最多的,所以我們以拜登為原模型,制作詞云圖。
# 首先下載圖片模型,這里提供的是已經(jīng)處理好的圖片,有興趣的選手可以自己寫代碼進行圖片處理 # 處理結(jié)果:需要將人圖像和背景顏色分離,并純色填充,詞云才會只顯示在人圖像區(qū)域 # 拜登原圖:https://img.alicdn.com/tfs/TB1pUcwmZVl614jSZKPXXaGjpXa-689-390.jpg # 拜登處理后圖片:https://img.alicdn.com/tfs/TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg # 特朗普原圖:https://img.alicdn.com/tfs/TB1D0l4pBBh1e4jSZFhXXcC9VXa-298-169.jpg # 特朗普處理后圖片:https://img.alicdn.com/tfs/TB1BoowmZVl614jSZKPXXaGjpXa-298-169.jpg # 這里我們先下載處理后的圖片 !wget https://img.alicdn.com/tfs/TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg --2021-04-10 19:18:54-- https://img.alicdn.com/tfs/TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg Resolving img.alicdn.com (img.alicdn.com)... 120.77.195.15, 101.37.183.187 Connecting to img.alicdn.com (img.alicdn.com)|120.77.195.15|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 4236 (4.1K) [image/jpeg] Saving to: ‘TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg’100%[======================================>] 4,236 --.-K/s in 0s 2021-04-10 19:18:54 (24.1 MB/s) - ‘TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg’ saved [4236/4236]?
# 由于下載圖片文件名過長,我們對文件名進行重命名 import os os.rename('TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg', 'biden.jpg') # 如果有興趣,可以在上面下載原圖后進行圖片處理 # 拜登原圖:https://img.alicdn.com/tfs/TB1pUcwmZVl614jSZKPXXaGjpXa-689-390.jpg # 拜登處理后圖片:https://img.alicdn.com/tfs/TB10Jx4pBBh1e4jSZFhXXcC9VXa-689-390.jpg ''' 你的圖片處理代碼 ''' '\n你的圖片處理代碼\n' # 在4.2 熱門候選人拜登在各州的獲得的捐贈占比 中我們已經(jīng)取出了所有支持拜登的人的數(shù)據(jù),存在變量:biden中 # 將所有捐贈者姓名連接成一個字符串 data = ' '.join(biden["NAME"].tolist()) # 讀取圖片文件 bg = plt.imread("biden.jpg") # 生成 wc = WordCloud(# FFFAE3background_color="white", # 設(shè)置背景為白色,默認為黑色width=890, # 設(shè)置圖片的寬度height=600, # 設(shè)置圖片的高度mask=bg, # 畫布margin=10, # 設(shè)置圖片的邊緣max_font_size=100, # 顯示的最大的字體大小random_state=20, # 為每個單詞返回一個PIL顏色 ).generate_from_text(data) # 圖片背景 bg_color = ImageColorGenerator(bg) # 開始畫圖 plt.imshow(wc.recolor(color_func=bg_color)) # 為云圖去掉坐標軸 plt.axis("off") # 畫云圖,顯示 # 保存云圖 wc.to_file("biden_wordcloud.png") <wordcloud.wordcloud.WordCloud at 0x7f742928ca58>[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-XuVStqlJ-1618065234568)(output_49_1.png)]
# 按州總捐款熱力地圖 ''' 參賽選手自由發(fā)揮、補充 第一個補充熱力地圖的參賽選手可以獲得天池杯子一個 ''' from mpl_toolkits.mplot3d import axes3d#畫熱力圖時,最好再導一次 import seaborn as sns %matplotlib notebook #未完待續(xù)總結(jié)
- 上一篇: windows 下连服务器
- 下一篇: sourcetree 回滚提交