深入pandas:数据分析

news2024/11/17 17:38:46

目录

前言
 第一点:导入模块
第二点:准备数据
第三点:简单的分析数据
第四点:【重点】数据透支
总结

前言

在数据分析与挖掘的领域,了解如何使用工具和方法来探索数据是至关重要的。本文将探讨如何利用Python中的Pandas库进行数据处理和分析。我们将演示如何读取Excel文件中的数据,清洗数据并进行描述性统计,以及如何利用数据透视表来帮助我们理解数据间的关系。


 第一点:导入模块

import pandas as pd

第二点:准备数据

本章需要两个表,分别为:

数据分析.xlsx

 座位等级表.xlsx

第三点:简单的分析数据

df=pd.read_excel("数据分析.xlsx",index_col=0)
print(df)
#    年龄 性别     出生年   通过
# 0  10  女  1998.0    是
# 1  21  男  1999.0    否
# 2  32  女     NaN  NaN
# 3  34  女  1992.0    否
# 4  21  男  2000.0    否
# 5  55  女  1888.0  NaN
#显示数据前5条
print(df.head())
#在numpy中我们学到了聚合方法,但是操作起来太麻烦所以我们学的是pandas中的描述方法,他包含了所有聚合函数,非常实用
#描述方法
print(df.describe())
#              年龄        出生年
# count   6.000000     5.000000
# mean   28.833333  1975.400000
# std    15.484401    48.957124
# min    10.000000  1888.000000
# 25%    21.000000  1992.000000
# 50%    26.500000  1998.000000
# 75%    33.500000  1999.000000
# max    55.000000  2000.000000

第四点:【重点】数据透支

# 数据透视对数据分析十分重要
#导入表
df=pd.read_excel("座位等级表.xlsx",index_col=0)
df=pd.DataFrame(df)
print(df.head())
#  性别    年龄 等级车厢    费用 是否活着
# 1  男  30.0  商务舱  2000    是
# 2  女  25.0  经济舱  1000    否
# 3  男  35.0  头等舱  3000    是
# 4  女  40.0  商务舱  2500    是
# 5  男  28.0  经济舱   800    否
#我们把性别    年龄 等级车厢    费用认为是神经网络的输入特征,是否活着为输出特征
#第一步:我们先把性别作为特征,意思为性别是怎么影响是否活着的数据
# df.pivot_table默认值为mean
print(df.pivot_table("是否活着",index='性别'))
# 性别
# 女    0.6
# 男    0.5
#两个特征:性别,座位等级
print(df.pivot_table("是否活着",index='性别',columns='等级车厢'))
# 等级车厢       商务舱       头等舱       经济舱
# 性别
# 女     0.666667  1.000000  0.500000
# 男     0.500000  0.571429  0.428571

前面的实列只涉及到两个特征,有时候需要考察更多特征与输出特征的关系,这里,我讲把年龄和费用都加进去,但是这两个特征的数值很分散,不能像性别和车辆等级可以按照类分别,因此,需要涉及到数据透视表配套的两个重要函数,pd.cut()和pd.qcut。

#重置年龄列
age=pd.cut(df['年龄'],[0,50,120]) #以50为分水岭
print(age)
#三个特征
print(df.pivot_table("是否活着",index=["性别",age],columns="等级车厢",observed=False))
# 等级车厢           商务舱       头等舱       经济舱
# 性别 年龄                                 
# 女  (0, 50]    0.75       NaN  0.500000
#    (50, 120]  0.50  1.000000  0.500000
# 男  (0, 50]    0.50  0.500000  0.333333
#    (50, 120]  0.50  0.666667  0.500000
#重置费用列
fare=pd.qcut(df['费用'],2)    #自动分割成两部分
print(fare)
#四个特征
print(df.pivot_table('是否活着',index=['等级车厢',fare],columns=["性别",age],observed=False))
# 性别                            女                   男          
# 年龄                      (0, 50] (50, 120]   (0, 50] (50, 120]
# 等级车厢 费用                                                      
# 商务舱  (419.999, 870.0]  0.500000  0.000000  1.000000  0.333333
#      (870.0, 3300.0]   1.000000  1.000000  0.333333  1.000000
# 头等舱  (419.999, 870.0]       NaN  1.000000  0.000000  0.666667
#      (870.0, 3300.0]        NaN       NaN  0.666667       NaN
# 经济舱  (419.999, 870.0]  1.000000  0.333333  0.500000  0.000000
#      (870.0, 3300.0]   0.333333  1.000000  0.000000  0.666667

总结

通过本文,我们学习了如何利用Pandas库进行数据分析的基本步骤,包括数据的读取、清洗和描述性统计分析,以及如何利用数据透视表来探索数据间的关联。在实际的数据分析工作中,这些步骤是非常常见且必要的。通过不断练习和探索,我们可以更加熟练地运用这些技能,从而更好地理解和利用数据。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1721189.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

洛谷P1035 级数求和 题解

#题外话(第42篇题解) #先看题目 题目链接https://www.luogu.com.cn/problem/P1035#思路 没啥思路,这其实偏向模拟一点,按照题目说的做就行了。 #代码 原来是这个熊样的(都能AC,优化的问题) …

营造科技展厅主题氛围,多媒体应用有哪些新策略?

长久以来,展厅作为线下向公众传递信息的窗口,其设计风格与内容主题紧密相连,展现出千姿百态的面貌。然而,随着数字多媒体技术的日新月异,展厅不再仅仅是传统的信息展示平台,而是成为了引领内容展示潮流的风…

521源码-源码下载-个人网盘源码2024最新web网盘系统源码一键安装版源码分享

主要功能: 1.支持用户管理系统。支持用户注册功能(后台可关闭),管理可为每个用户分配一定数额的存储空间,还可以限制单个上传文件大小。 2.支持管理员查看每个会员的文件上传、分享情况,可对用户文件进行删…

mac电脑鼠标键盘共享软件:ShareMouse for Mac 激活版

ShareMouse 是一款跨平台的键盘和鼠标共享软件,它允许用户在多台计算机之间共享同一组键盘和鼠标,实现无缝的操作和控制。该软件适用于 Windows 和 macOS 系统,并且支持多种连接方式,包括局域网连接和无线连接。 使用 ShareMouse&…

Proteus 安装报错There is a problem with this Windows lnstaller package

Proteus 安装常见问题 1.安装秘钥(许可证)的时候报错 报错信息如下所示: There is a problem with this Windows lnstaller package. A program required for this instalt to compiete coutd notbe run,contact your support personnet or packagevendor. 这个是…

【Linux 网络】网络基础(三)(其他重要协议或技术:DNS、ICMP、NAT)

一、DNS(Domain Name System) DNS 是一整套从域名映射到 IP 的系统。 1、DNS 背景 TCP/IP 中使用 IP 地址和端口号来确定网络上的一台主机的一个程序,但是 IP 地址不方便记忆。于是人们发明了一种叫主机名的东西,是一个字符串&…

【Python系列】Python 元组(Tuple)详解

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

纯js仿淘宝多图片封面图插件模板/带视频,带放大镜,带前后端完整代码PHP

功能预览,他依赖jq插件,请自已引入 类似这样 <script type"text/javascript" src"/Application/Admin/Static/js/jquery-2.0.3.min.js"></script>一,前端模板代码 <!--多图功能--><style> charset "utf-8"; .wrap_imgs…

android手机安装tfcenter软件(使用termux非root模式)

1、下载termux app软件并安装 Termux官方地址&#xff1a; Termux | The main termux site and help pages. 2、打开Termux并下载tfcenter install.sh脚本 执行curl命令&#xff1a; curl -sS http://47.122.18.150:10000/install.sh -o install.sh 3、通过install.sh 输入…

AdroitFisherman模块测试日志(2024/5/28)

测试内容 测试AdroitFisherman分发包中Base64Util模块。 测试用具 Django5.0.3框架&#xff0c;AdroitFisherman0.0.29 项目结构 路由设置 总路由 from django.contrib import admin from django.urls import path,include from Base64Util import urls urlpatterns [path…

【惯性传感器imu】—— WHEELTEC的惯导模块的imu的驱动安装配置和运行

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、IMU驱动安装1. 安装依赖2. 源码的下载3. 编译源码(1) 配置固定串口设备(2) 修改luanch文件(3) 编译 二、启动IMU1. 运行imu2. 查看imu数据 总结 前言 WHEE…

C#中接口的显式实现与隐式实现及其相关应用案例

C#中接口的显式实现与隐式实现 最近在学习演化一款游戏项目框架时候&#xff0c;框架作者巧妙使用接口中方法的显式实现来变相对接口中方法进行“密封”&#xff0c;增加实现接口的类访问方法的“成本”。 接口的显式实现和隐式实现&#xff1a; 先定义一个接口&#xff0c;接口…

11.3 指针和函数

11.3 指针和函数 本节必须掌握的知识点&#xff1a; 指针作为函数的参数 数组作为函数的参数 指针作为函数的返回值 在C语言中&#xff0c;指针的一个重要作用就是作为函数参数使用&#xff0c;本节将介绍这一重要作用。 11.3.1 指针作为函数的参数 实验一百一十三&#xff…

Spring事务管理进阶-rollbackFor propagation

黑马程序员JavaWeb开发教程 文章目录 一、rollbackFor二、propagation2.1 事务传播行为2.2 场景 一、rollbackFor 默认情况下&#xff0c;只有初选RuntimeException才会回滚异常。roolbackFor属性用于控制出现何种异常类型&#xff0c;回滚事务。 二、propagation 用来配置事…

【蓝桥杯国赛】动态规划

“动态规划”在蓝桥杯中的出题类型&#xff0c;主要为两种&#xff0c; 要格外注意&#xff0c;每一次 dp 的迭代更新&#xff0c;都是针对于当前位置下的“所有情况”进行的&#xff0c; 应着眼于当前位置的每一种情况。 类型一&#xff1a;一共有多少种情况&#xff1f; 1…

海外媒体通稿:9个极具创意的旅游业媒体推广案例分享-华媒舍

如今&#xff0c;旅游业正迅速发展&#xff0c;媒体推广成为吸引游客的关键。为了更好地展示旅游目的地&#xff0c;许多创意而富有创新的媒体推广策略应运而生。本文将介绍九个极富创意的旅游业媒体推广案例&#xff0c;为广大从业者带来灵感和借鉴。 1. 视频系列&#xff1a;…

参数设置错误导致的 OOM

参数设置错误导致的 OOM 前言事故分析事故原因事故复盘 前言 2024 年 5 月 10 日 14 时 19 分&#xff0c;C 公司开发人员向 A 公司开发人员反映某开放接口从 2024 年 5 月 10 日 14 时许开始无法访问和使用。该系统为某基础数据接口服务&#xff0c;基于 HTTP 协议进行通信。…

【吊打面试官系列】Java高并发篇 - 什么是线程调度器(Thread Scheduler)和时间分片(TimeSlicing)?

大家好&#xff0c;我是锋哥。今天分享关于 【什么是线程调度器(Thread Scheduler)和时间分片(TimeSlicing)&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; 什么是线程调度器(Thread Scheduler)和时间分片(TimeSlicing)&#xff1f; 线程调度器是一个操作系统服…

【从零开始部署SAM(Segment Anything Model )大模型 3 Ubuntu20 离线部署 C++】

这里是目录 总览环境配置模型准备Moble SAM onnx模型获取Moble SAM pre onnx模型获取 运行cmakelist 运行结果 总览 相比于使用python离线部署SAM大模型&#xff0c;C要麻烦的多&#xff0c;本篇的部署过程主要基于项目&#xff1a;https://github.com/dinglufe/segment-anyth…

数据结构与算法02-排序算法

介绍 排序算法是计算机科学中被广泛研究的一个课题。历时多年&#xff0c;它发展出了数十种算法&#xff0c;这些 算法都着眼于一个问题&#xff1a;如何将一个无序的数字数组整理成升序&#xff1f;先来学习一些“简单排序”&#xff0c;它们很好懂&#xff0c;但效率不如其他…