《对比Excel,轻松学习Python数据分析》笔记

写在开头:因为我自己接触python也有一段时间了,所以此份笔记是用来查漏补缺以及记录个人认为重要的知识点


1、数据分析的常规流程

常规流程

2、缺失数据

  • 对于缺失比例超过30%的指标,应该选择放弃这个指标,即做删除处理;
  • 对于缺失比例低于30%的指标,一般进行填充处理,即使用0、均值或者众数进行填充。

3、为Jupyter Notebook添加目录

为了便于阅读,可为代码增加一个目录,通过点击下图右侧红框可以建成下图左侧红框的目录,通过点击目录跳转到相应的代码部分。
不过添加目录不是Jupyter Notebook自带的需要自己安装相应的插件,打开命令行,输入以下代码:

conda install -c conda-forge jupyter_contrib_nbextensions

详细安装,请参考为Jupyter Notebook添加目录

添加目录

4、输出与输出格式设置

  • 利用关键词print进行输出
>>>print("Hello World")
Hello World
  • 对输出格式做一定的设置,可以使用str.format()方法进行设定:
    其中str是一个字符串,将format里面的内容填充到str字符串的{}里
    • 一对一填充
    >>>print('我正在学习:{}'.format('pyhton基础知识'))
    我正在学习:python基础知识
    
    • 多对多填充
    >>>print('我正在学习{}中的{}'.format('python','基础知识'))
    我正在学习python中的基础知识
    
    • 浮点数设置
      .2f表示以浮点数展示,且显示小数点后两位,.3f表示显示小数点后3位的浮点数,以此类推。
    >>>print("{}约{:.2f}亿".format('中国单身人数',2))
    中国单身人数约2.00亿
    
    • 百分数设置
      .2%表示以百分比的形式展示,并且展示小数点后两位。
    >>>print("中国男性的比例占总人口的{:.2%}".format(0.519))
    
    浮点数以及百分数设置中“:”必不可少

5、移除字符

一直以为strip()函数只是用来去除字符串首尾的空格的,但它是用来去除字符串的指定字符,默认移除字符串首尾的空格和换行符

>>>"AaA".strip("A")
"a"

6、导入文件路径或者文件名中包含中文

使用pandas.read_csv()读取文件时,当导入文件路径或者文件名中包含中文时,需要加入engine="pyhton"来消除报错,这个错误产生的原因是:当我们调用read_csv()方法时,默认使用C语言作为解析语言,我们只需要将默认值改为python就行,如果文件格式是csv utf-8,则编码格式也要跟着变为utf_8_sig;如果是文件格式是csv,则编码格式则为gbk。

7、导入sql文件

step1:将python与数据库进行连接

import pymsql

eng = pymql.connect(host='localhost',
                       user='user',
                       password='password',
                       db='db',
                       charset='utf-8')
# user:用户名
# password:密码
# db:数据库名
# charset:数据库编码,一般为utf-8

step2:执行sql查询语句

import pandas as pd
df = pd.read_sql(sql,con=eng)
# 参数sql是需要执行的sql语句
# con是step1建立好的连接,即eng

8、异常值的识别与处理

识别方式有以下3种:
  1. 根据业务经验划定不同指标的正常范围,超过正常范围的视为异常值;
  2. 利用四分位数将大于上边缘和小于下边缘的值视为异常值;


    箱型图
  3. 如果数据服从正态分布,可使用3σ原则:如果一个数值与平均值之间超过3倍的标准差(σ),则将其视为异常值。下图为正态分布图,大于u+3σ以及小于u-3σ的值视为异常值。


    正态分布
处理异常值的方法有以下几种:
  • 最常用的方式就是删除
  • 把异常值当作缺失值进行填充
  • 把异常值当作特殊情况,研究异常值出现的原因

9、apply()与applymap()函数

apply()和applymap()都需要与匿名函数lambda结合使用

  • apply()函数主要对DataFrame中的某一列或某一行的元素进行相同的函数操作
df['column_name'].apply(lambda x:x+1)

applymap()函数用于对DataFrame中的每一个元素进行相同的函数操作

df.applymap(lambda x:x+1)

10、将文件导出到多个sheet

使用ExcelWriter()函数

# 声明一个读写对象
# excelpath为文件存放的路径
writer = pd.ExcelWriter(excelpath,engine='xlsxwriter')
# 分别将表df1、df2、df3写入Excel中的sheet1、sheet2、sheet3
# 并命名为表1、表2、表3
df1.to_excel(writer,sheet_name = "表1")
df2.to_excel(writer,sheet_name = "表2")
df3.to_excel(writer,sheet_name = "表3")
# 保存读写的内容
writer.save()

读后感受:不适合新手小白,需要对python有一定的认知后阅读
附上pdf版:
链接:https://pan.baidu.com/s/1_oBc3Khi4CClw7nFDQSB1A
密码:jga1

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,099评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,828评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,540评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,848评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,971评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,132评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,193评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,934评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,376评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,687评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,846评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,537评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,175评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,887评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,134评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,674评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,741评论 2 351

推荐阅读更多精彩内容