专栏名称: 爱数据LoveData
中国统计网(www.itongji.cn),国内最大的数据分析门户网站。提供数据分析行业资讯,统计百科知识、数据分析、商业智能(BI)、数据挖掘技术,Excel、SPSS、SAS、R等数据分析软件等在线学习平台。
目录
相关文章推荐
51好读  ›  专栏  ›  爱数据LoveData

如何快速学会Python处理数据?(5000字走心总结)

爱数据LoveData  · 公众号  · BI  · 2021-03-10 16:30

正文

请到「今天看啥」查看全文


  • 自己找些小作业练习
  • 解决平常工作中的问题
  • 可以尝试输出文章

重要的事情说三遍,多练!多练!多练!

Python和数据分析都是实践学科,光学理论,不练习,是不会有任何收获的,学完之后不练就忘掉了。最好的方式,就是先掌握一点基础语法,然后把Python融合到工作中,解决日常工作中碰到的问题。在解决问题的时候,你会碰到各种问题,可以去"百度"寻找答案。最后,要定期总结和输出。

特别提示,假如你没有基础或者基础薄弱的话,建议工作期间不要尝试用Python解决复杂的问题,这是一个很浪费时间的事情,中间各种问题,会让你崩溃。最终Python没学好,还耽误了工作。所以,要利用工作之余的时间,把python基础打扎实。

02

Python数据处理示例

01

安装并搭建

Python环境

首先,需要安装python,我要推荐Anaconda3,从事数据分析的伙伴们,严重推荐此软件!

Anaconda降低了数据分析初学者的学习门槛,因为这个软件自带了python中大概有1000多个数据科学包,让你无需单独学习每个库的安装方法。另外,还自带了Jupter notebook代码编译器。现在,Anaconda和Jupyter notebook已成为数据分析的标准环境。

具体的安装方法参考如下链接:
https://mp.weixin.qq.com/s/53-KvHGYqCSx8qtUnub_vw

安装完成后,打开Jupter Notebook,就可以在上面输入代码。

02

问题说明

现在工作中面临一个批量化文件处理的问题:就是要把每个二级文件下csv文件合并到一个数据表里,同时要在最终的数据表里增加两列,一列是一级文件目录名称,另一列是二级文件目录名称。

  • 总共有105个一级文件目录
  • 每个一级文件下有若干个二级文件
  • 每个二级文件下有若干个csv格式的数据

当工作中,碰到这样的问题时,我用最笨拙的方法——人工,一个一个文件整理,但是效率比较低,可能需要一个人一天的工作量。当然,我也可以寻找技术的帮忙,找一个Java工程师,这个问题也很容易解决,但麻烦别人一次,没问题。以后碰到类似的问题,总是麻烦,就不好了。假如自己掌握了Python,这个问题就变得很简单了。

03

程序实现

其实这个问题,对于一个专业的Python程序员来说,是一个再简单不过的问题。但是对于一个初学者来说,要解决这个问题,恐怕需要费一点时间和脑力。

编程之前,我是如何思考的:
1、首先,要读取文件名称,需要引入OS模块下的listdir函数
2、其次,遍历所有一级、二级、三级文件名称,需要用到for循环和循环嵌套
3、然后,读取文件下csv表,需要用到pandas模块下的read_csv函数
4、最后,整理合并后的所有表,需要用到DataFrame的操作方法

实现代码如下:
#导入模块
import os
import pandas as pd

##定义一个读取文件名的函数
def readname(a):
    filePath="D:\\\\ad_data\\\\"+a+"\\\\"
    name=os.listdir(filePath)
    return name

#声明初始变量
a=""
name= readname(a)
data_new =pd.Dataframe()

#循环遍历文件名称
for i in name:
    name1=readname(i)
    for j in name1:
        file_path = "D:\\\\ad_data\\\\"+i+"\\\\"+j+"\\\\"
        name3=os.listdir(file_path)
        for t in name3:
            csv_path = "D:\\\\ad_data\\\\"+i+"\\\\"






请到「今天看啥」查看全文