常遇到两类朋友。一类是会爬虫但不清楚怎么进一步做数据分析,一类是平常用 Excel 做分析但不太会用 Python 分析的。如果你也是这样,那本文会很适合你,建议先收藏。

选择VBA还是Python取决于你的需求

如果想把 Excel 与数据库、爬虫、微信、邮件等连接,或是处理的数据量比较大的话,那用 Python 是更合适的,在 Excel 里面处理可能会“卡成 PPT“……

对小白友好,容易上手

Python是门编程语言,很多人觉得自己并非专业出身,花大把时间学习在学习Python编程上,是不是舍本逐末?

其实,真的是你多虑了。 现在各种行业都要进行数据分析和Python,更何况Python的语法近似英语, 对初学者非常友好,看Python代码更像是阅读文章 。

看下面的代码用Python制作词云图,一目了然:

from pyecharts import WordCloud
name = data_10['关键词'].tolist()
value = data_10['出现频率'].tolist()
wordcloud = WordCloud(width=1300, height=620)
wordcloud.add("", name, value, word_size_range=[20, 100])
wordcloud.render('./参考案例HTML/关键词统计词云图.html')
wordcloud

Python爬虫实现自动化

会Python的人用python爬虫处理数据,敲几下几行代码,30秒就轻松地把表格做了出来。

python数据分析比excel excel和python数据分析_python数据分析比excel


不仅如此,自动生成数据可视图,在汇报时,数据一目了然。

python数据分析比excel excel和python数据分析_python数据分析比excel_02


Python拥有强大的绘图功能,能够一次性完成数据导入-分析-出结果-绘图,直接把分析结果用图标的形式清晰的呈现出来。

python数据分析比excel excel和python数据分析_python_03


利用python爬虫,爬取需要的资料、素材、数据,还能自动计算生成图表。

python数据分析比excel excel和python数据分析_http_04

Python操作excel的基本用法

Python操作excel的相关工具包可以具体到操作指定单元格的填充样式、数值类型、数值大小等等。

单元格操作

#定义方法:读取指定目录下Excel文件某个sheet单元格的值
```python
def excel_read(file_path,table,x,y):
data = xlrd.open_workbook(file_path)
table = data.sheet_by_name(table)
return table.cell(y,x).value
# 定义方法:单元格值及样式
write_obj_list = []
def concat_obj(cols,rows,value):
write_obj_list.append({'cols':cols,'rows':rows,'value':value,\
'style':xlwt.easyxf('font: name 宋体,height 280;alignment: horiz centre')})
# 定义方法:合并单元格
def merge_unit(srows,erows,scols,ecols,value):
write_obj_list.append({'id':'merge','srows':srows,'erows':erows,'scols':scols,\
'ecols':ecols,'value':value,'style':xlwt.easyxf('font: name 宋体,height 280;alignment: horiz centre')})
# 定义方法:更新excel
excel_update(file_path,write_obj_list,new_path):
old_excel = xlrd.open_workbook(file_path, formatting_info=True)
#管道作用
new_excel = copy(old_excel)
''
通过get_sheet()获取的sheet有write()方法
'''
sheet1 = new_excel.get_sheet(0)
'''
1代表是修改第几个工作表里,从0开始算是第一个。此处修改第一个工作表
'''
for item in write_obj_list:
if 'id' not in item.keys():
if 'style' in item.keys():
sheet1.write(item['rows'], item['cols'], item['value'],item['style'])
else:
sheet1.write(item['rows'], item['cols'], item['value'])
else:
if 'style' in item.keys():
sheet1.write_merge(item['srows'],item['erows'],item['scols'], item['ecols'], item['value'],item['style'])
else:
sheet1.write_merge(item['srows'],item['erows'],item['scols'], item['ecols'], item['value'])
'''
如果报错 dict_items has no attributes sort
把syle源码中--alist.sort() 修改为----> sorted(alist)
一共修改2次
'''new_excel.save(file_path)
#参数详解
# srows:合并的起始行数
# erows:合并的结束行数
# scols:合并的起始列数
# ecols:合并的结束列数
# value:合并单元格后的填充值
# style:合并后填充风格:
# font: name 宋体
# height 280;
# alignment: horiz centre

在当前工作目录下生成想要的Excel结果文件。

python操作excel还有很多其他的基本方法,学会python操作excel的单元格、并掌握上面的方法就可以基本实现excel的自动化报表操作了。

python数据分析比excel excel和python数据分析_大数据_05


Python的优势特别多,若能灵活运用,解决日常工作中很多的枯燥无味、冗杂的问题和工作,会大大提升工作效率。