三分钟教你Python数据分析—数据导入,小白基础入门必看

今天我们来学习数据导入,需要使用到Pandas模块。

模块相当于是一个文件夹,它能够用于存放同个主题相关的Python代码段,包括定义函数、类和变量。

例如将数据处理相关的函数都存放在一个模块里,将数据分析相关的函数都存放在一个模块里,将数据可视化相关的函数都存放在一个模块里。这样就可以在其他有需要的地方进行调用,在编写程序的时候,经常需要引用其它模块。

你可以将Excel菜单中的每个选项卡 看成是一个模块,例如数据选项卡下就包含了数据获取和转换、连接、排序和筛选、数据工具等功能。只是它以图形界面的方式供我们选择使用。

img

而Python中的模块一般看不见摸不着,需要在使用的时候进行导入使用,所以对初学者来说不算太友好,这也是大家认为Python难学的原因之一。

另外Python中模块的概念,在 Java 中称之为包(package),而在 C\C++中则称之为库(library),Java和C\C++都是程序员常用的编程语言,所以有些程序员就会把Python 中的模块混淆称之为包和库,你只要明白它们说的是一回事即可。

原来是这么回事,那Pandas模块又是什么?

Pandas模块是Python的一个数据分析模块,它最初被用作金融数据分析工具而开发出来,所以Pandas为时间序列分析提供了很好的支持。为了提供高效操作大型数据集的工具,Pandas提出了一套类似Excel的标准数据应用框架,包含了类似Excel表格的数据框DataFrame,以及快速便捷地处理数据的函数和方法,让数据分析整个过程变得快速、简单。可以毫不夸张地说,Pandas是Python中进行数据分析的最好工具。

Pandas模块怎么使用呢?它在哪呢?

在安装Anaconda的时候,都已经一起安装好了,我们只需把它导入就可以使用了,主要有两种使用方法:

第一种是使用import语句进行导入。

import 模块名

这是模块导入最常使用的方法,模块导入后,就可以通过使用 模块名.变量名调用模块中的变量,使用 模块名.函数名 调用模块中的函数。

第二种是使用 from import 语句进行导入。

from 模块名 import 函数名

这种情况就是明 确知道要导入哪个模块哪个函数或变量的时候使用。使用这种导入的方式,在使用函 数或变量的时候,就不用在前面加上对应的模块名了。

那我们是不是可以导入Pandas模块了?

可以,不过不用那么急,我们先来看我们要导入的数据data.csv,先使用Notepad++打开查看数据是什么样子的:

img

这份数据是一份用户数据,记录了用户的id,注册日期reg_date,用户的身份证号id_num,性别gender,生日birthday,年龄age六个字段数据,每个字段使用英文逗号分隔。

还有一个很重要的信息,就是这份数据采用UTF-8的编码格式记录数据。

UTF-8是互联网上使用最广的一种unicode的实现方式,为传输而设计的编码,最大的特点是统一无国界,可以显示全世界上所有文化的字符。

现在我们可以来导入数据了,打开spyder,输入以下代码

img
我给代码加上对应的注释,使用#来添加注释,这样解析器就不会执行注释所在的行的内容。你再看看。

img
在变量浏览窗口中就可以看到刚导入的data变量了,双击打开data变量,就可以得到下面这张表。

img

导入TXT与EXCEL数据文件

首先是导入TXT数据文件,使用的是Pandas模块中的read_table函数,数据还是与昨天一样,只是存为了TXT文件。有了昨天CSV数据文件的导入经验,导入TXT数据文件就轻车熟路了,打开spyder,输入以下代码

img
这个比导入CSV文件多了个参数SEP,是设置列分隔符的意思吧?

同样我给代码加上对应的注释,使用#来添加注释,这样解析器就不会执行注释所在的行的内容。

img

在变量浏览窗口中就可以看到刚导入的data变量了,双击打开data变量,就可以得到下面这张表。

img

接下来是导入EXCEL数据文件,使用的是Pandas模块中的read_excel函数,输入以下代码

img

在变量浏览窗口中就可以看到刚导入的data变量了,双击打开data变量,就可以得到下面这张表。

img

你发现没有,id、age这两列都有不同颜色标识。

因为这两列数据类型为整数型,你看打开的这个数据框最下面有一个 Background color选项被勾选上,这个功能相当于Excel条件格式中的色阶功能,它仅对整数型、浮点型有效,对其他数据类型无效。

我们可以使用下列命令查看下每列的数据类型

img

可以看到只有id、age是int64型,其他都是object类型

img

今天就到这,下次我们继续学习其他操作,回去要多多练习,多敲代码。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等习教程。带你从零基础系统性的学好Python!

一、Python学习大纲

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

三、入门学习视频

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。在这里插入图片描述

五、python副业兼职与全职路线

在这里插入图片描述

上述这份完整版的Python全套学习资料已经上传CSDN官方,如果需要可以微信扫描下方CSDN官方认证二维码 即可领取

👉[[CSDN大礼包:《python兼职资源&全套学习资料》免费分享]]安全链接,放心点击

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
假设有如下数据: | start_time | size | |---------------------|------| | 2021-06-01 00:01:00 | 10 | | 2021-06-01 00:02:30 | 5 | | 2021-06-01 00:03:40 | 8 | | 2021-06-01 00:05:00 | 7 | | 2021-06-01 00:06:20 | 3 | | 2021-06-01 00:08:10 | 6 | 要合并 start_time 三分钟内的 size 数据,可以按照以下步骤进行: 1. 将 start_time 转化为时间戳(单位为秒),并将 size 转化为整型: ```python import time data = [ {"start_time": "2021-06-01 00:01:00", "size": "10"}, {"start_time": "2021-06-01 00:02:30", "size": "5"}, {"start_time": "2021-06-01 00:03:40", "size": "8"}, {"start_time": "2021-06-01 00:05:00", "size": "7"}, {"start_time": "2021-06-01 00:06:20", "size": "3"}, {"start_time": "2021-06-01 00:08:10", "size": "6"} ] for d in data: d["start_time"] = int(time.mktime(time.strptime(d["start_time"], "%Y-%m-%d %H:%M:%S"))) d["size"] = int(d["size"]) ``` 2. 定义一个函数,用于将数据按照 start_time 进行分组: ```python def group_by_start_time(data): groups = [] current_group = [] for d in data: if not current_group: current_group.append(d) elif d["start_time"] - current_group[-1]["start_time"] <= 180: current_group.append(d) else: groups.append(current_group) current_group = [d] if current_group: groups.append(current_group) return groups ``` 3. 调用 group_by_start_time 函数,将数据按照 start_time 进行分组,并将每个组的 size 进行求和: ```python groups = group_by_start_time(data) result = [] for group in groups: start_time = group[0]["start_time"] size = sum(d["size"] for d in group) result.append({"start_time": start_time, "size": size}) ``` 最终的结果为: | start_time | size | |------------|------| | 1622503260 | 23 | | 1622503360 | 3 | | 1622503690 | 6 |

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值