作者:老A 如需轉(zhuǎn)載請聯(lián)系華章科技 Excel里面的透視表(Pivot Table)確實(shí)是做數(shù)據(jù)分析的必備技能。透視表可以幫你迅速匯總數(shù)據(jù),看到各類型數(shù)據(jù)的直觀特征就像是讓你站在了一個(gè)更高的視角上去看你的數(shù)據(jù)。作為進(jìn)階,Excel自帶的函數(shù),各種插件,以及VBA也是很好的工具。 但當(dāng)數(shù)據(jù)量大到用Excel打開都要好久,電腦打開文件都會(huì)死機(jī)的時(shí)候,這種也就不適合用office工具了,也或者我們想進(jìn)一步提升能力的時(shí)候,需要學(xué)習(xí)一些hardcore技能,即用編程語言做數(shù)據(jù)分析。 這里主要有R和Python兩大流派。我個(gè)人推薦Python,一方面Python代碼簡單易懂,容易上手;另一方面學(xué)習(xí)資料超級多。關(guān)于Python的學(xué)習(xí)資料,這里我推薦《利用Python進(jìn)行數(shù)據(jù)分析》,這本書涵蓋了利用Python做數(shù)據(jù)清洗,數(shù)據(jù)可視化及分析的技能點(diǎn),可以作一本參考書、工具書,也可以對著書里面的案例進(jìn)行實(shí)操。 受這本書的啟發(fā),我寫了下面是幾個(gè)處理Excel的小程序,僅供大家參考學(xué)習(xí)數(shù)據(jù)分析和數(shù)據(jù)從Excel中獲取數(shù)據(jù)。Python對Excel的讀寫主要有xlrd、xlwt、xlutils、openpyxl、xlsxwriterp這幾個(gè)形式。具體的安裝方法可以從網(wǎng)上查一下,然后導(dǎo)入Python中就可以使用了。 1. xlrd主要是用來讀取excel文件import xlrdworkbook = xlrd.open_workbook(u' Python進(jìn)行數(shù)據(jù)分析測試.xls')sheet_names= workbook.sheet_names()for sheet_name in sheet_names: sheet2 = workbook.sheet_by_name(sheet_name) print sheet_name rows = sheet2.row_values(1) cols = sheet2.col_values(1) print rows print cols 2. xlwt主要是用來寫excel文件import xlwtwbk = xlwt.Workbook()sheet = wbk.add_sheet('sheet 1')sheet.write(0,1,'test text')#第0行第一列寫入內(nèi)容wbk.save('test.xls')3. xlutils結(jié)合xlrd可以達(dá)到修改excel文件目的import xlrdfrom xlutils.copy import copyworkbook = xlrd.open_workbook(u' Python進(jìn)行數(shù)據(jù)分析測試.xls')workbooknew = copy(workbook)ws = workbooknew.get_sheet(0)ws.write(3, 0, 'changed!')workbooknew.save(u' Python進(jìn)行數(shù)據(jù)分析測試copy.xls') 4. openpyxl可以對excel文件進(jìn)行讀寫操作from openpyxl import Workbookfrom openpyxl import load_workbookfrom openpyxl.writer.excel import ExcelWriter workbook_ = load_workbook(u' Python進(jìn)行數(shù)據(jù)分析測試.xlsx')sheetnames =workbook_.get_sheet_names() print sheetnamessheet = workbook_.get_sheet_by_name(sheetnames[0])print sheet.cell(row=3,column=3).valuesheet['A1'] = '47' workbook_.save(u' Python進(jìn)行數(shù)據(jù)分析測試新.xlsx') wb = Workbook()ws = wb.activews['A1'] = 4wb.save('檢索.xlsx') 最后把《利用Python進(jìn)行數(shù)據(jù)分析》這本書的內(nèi)容再給大家介紹一下,書中含有大量的實(shí)踐案例,講解如何利用各種Python庫(包括NumPy、pandas、matplotlib以及IPython等)高效地解決各式各樣的數(shù)據(jù)分析問題。 由于作者Wes McKinney是pandas庫的主要作者,所以這本書也可以作為利用Python實(shí)現(xiàn)數(shù)據(jù)密集型應(yīng)用的科學(xué)計(jì)算實(shí)踐指南,適合剛剛接觸Python的分析人員以及剛剛接觸科學(xué)計(jì)算的Python程序員。
|
|
|