【数据分析入门】如何用Python代替Excel

之前写了一篇如何用Python代替Excel,【数据分析入门】之:如何用Python代替Excel(1)

觉得对新手来说还是有点笼统,今天有空,就比较详细的再写一篇。

新手如何入门?

想必这是很多想学Python的同学很想知道的。我当初也是一股脑的想多学些技能,毕竟数据分析的职位要求,Python出现的频率可不少。

但问题是,之前不熟悉Python或者压根就不熟悉编程的人,该如何入门呢?

如果你的Excel没问题,那么这篇文章可能对你有帮助。(什么?Excel都不熟?亲,你不该来这里,而是去搜一搜Excel的文章)

  1. 该买一本书从头看吗?

你以为这是在大学,还有老师考试么?

买书,倒是不反对。但是不建议跟着书学,我曾经也走过这样的弯路,后来被路上的石头绊死了。跟着视频学,也是效率不高的办法。虽然当时是学到了,但是没用上,过后照样忘。

2. 那该怎么学?

如果你已经工作,并且从事数据相关工作,那就很容易了。如果你还没工作或者想入门数据分析,那可以在网上找个简单的例子——用Excel处理数据的例子。

边学边用,学以致用。是最高效最聪明的方法。

Python代替Excel?

Excel好用,废话。但是当遇到数据量稍微大点(超过10M)或者经常重复操作的时候,学Python来提升效率,就必不可少了。对于处理数据的功能上,Excel会的,Python基本上没有不会的。本次例子的数据源data2

  1. 用Excel怎么处理数据?

用Excel打开数据:

字段和数据一目了然。可以用Excel做条件筛选、计数、求和、均值。最常用的就是数据透视表。比如:想看看各个代理商已出售的金额总计

2. Python怎么处理数据?

就这么个简单的操作,如何用Python代替呢?

  • 读取文件

数据源是存放在Excel文档里,怎么在Python里读取Excel文档。

此处用到的是Pandas库当中的read_excel:

import pandas as pd  #导入pandas库,最常用的数据处理库
data=pd.read_excel(r'D:\feng\python_data\data2.xlsx')   #读取相关目录下的指定文件

括号内的 r 是防止字符串转译的,最好都添加上。Excel文件类型有:xls\xlsx,注意查看自己的文件类型是什么,在后缀上要用对。

pandas.read_excel(文档存储目录, sheetname='Sheet1', header=0, skiprows=None) 常用参数,可百度了解。

此外,读取csv,就用 pd.read_csv( ) 即可。

  • 查看数据及格式

读完数据之后,怎么知道读出来的是个什么东东,怎么预览数据呢?

读出来的是dataframe格式。在你搞不清这是什么对象的时候,可以用 type() 这个函数来查看。知道了对象的格式,就可以百度它有什么方法、属性,怎么使用它了。

data.head(10) 查看前10行的数据,可以在不清楚是什么数据的情况下,预先了解下数据。

  • 操作数据

1)查看是否有空值

对于某些分析或者操作,有空值会影响结果。data.isnull() 可以知道是否存在空值,但返回的是布尔类型(即True和False):

观察“价格”字段,是否存在空值:

data[data['价格(元)'].isnull()]    #价格字段为空的数据

2)空值填充

对价格为空的,填充“价格”字段的均值:

data['价格(元)'].fillna(value=data['价格(元)'].mean(),inplace=True)    #价格为空的,填充本列均值

data['价格(元)'].mean() 即价格字段的均值

values还可以是固定的数值,0或者其他:value=0

inplace=True 即改变原data数据,默认是False

填充完之后,价格字段就没有空值了。可以继续下一步。

3)代替Excel

目的是要完成上方Excel的功能:每个代理商已出售的金额

data_sold=data[data['状态']=='已出售']     #条件筛选出状态为“已出售”的数据
result=data_sold.groupby('代理商')['价格(元)'].sum()   #按代理商分组,价格求和

最终得到结果。

温馨提示:

groupby是分组方法,可以配合着使用的,除了sum() ,还有 mean() 均值、count() 计数、max() 、 min() 。大家可以自己尝试一下,看看得到什么结果。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值