Pandas 数据挖掘与分析时的常用方法
今天我们来讲一下用Pandas
模块对数据集进行分析的时候,一些经常会用到的配置,通过这些配置的帮助,我们可以更加有效地来分析和挖掘出有价值的数据。
数据集的准备
这次我们需要用到的数据集是广为人所知的泰坦尼克号的乘客数据,我们先导入并且读取数据集
import pandas as pd
df = pd.read_csv("train.csv")
展示更多的行
Pandas
默认只展示60
行的数据,如果数据集当中的数量超过了60行,
pd.get_option('display.max_rows')
## 或者是
pd.options.display.max_rows
output
60
要是数据集当中的数据超过了60行,则会将中间的数据给折叠起来,展示出来前面的5行以及最后的5行,如下图所示
当然我们也可以改变最多展示出来的行数,代码如下
pd.set_option('display.max_rows', 200)
或者我们要是想将所有的数据都给展示出来的话,就设置成None
,当然要是我们的数据集很长很长的话,有几万行几十万行的话,这么做可能会使得notebook
崩掉
pd.set_option('display.max_rows', None)
或者是
# pd.options.display.max_rows = None
展示更多的列
同样地,pandas
默认只展示20列的数据
pd.get_option('display.max_columns')
# pd.options.display.max_columns
output
20
要是数据集超过了20列的数据,中间的几列数据就会折叠起来,如下图所示
当然我们也可以改变这个值,例如当数据集当中的数据超过了50列才会被折叠,代码如下
# 当数据集当中的数据超过了50列才会被折叠
pd.set_option('display.max_columns', 50)
# pd.options.display.max_columns = 50
或者就干脆展示出来所有的列
pd.set_option('display.max_columns', None)
# pd.options.display.max_columns = None
改变列的宽度
当我们想要展示数据集当中的前5列的时候
df.head()
output
我们发现“Name”这一列当中的第二行因为字数比较多,就用了省略号来代替,这是因为Pandas
对显示数据的量也是有限制的,
pd.get_option('display.max_colwidth')
# pd.options.display.max_colwidth
当然我们也能改变这个默认值,代码如下
pd.set_option('display.max_colwidth', 500)
# pd.options.display.max_colwidth = 500
或者显示出所有的内容
pd.set_option('display.max_colwidth', None)
# pd.options.display.max_colwidth = None
改变浮点数的精度
或许你也察觉到了Pandas
对于浮点数的精度的展示也是有限制的,如下图所示
默认只展示小数点后面的6位小数,
pd.get_option('display.precision')
# pd.options.display.precision
output
6
要是我们只是希望展示小数点后面2位小数,则可以这么来做
pd.set_option('display.precision', 2)
# pd.options.display.precision = 2
我们来看一下最终的效果如何
df.head()
output
个性化展示数字
有时候我们遇到例如货币、百分比、小数等数字时,可以通过pandas
当中的display.float_format
方法来个性化展示数字,
pd.set_option('display.float_format', '{:,.2f}'.format)
df_test
例如我们希望对数字添加百分号来展示,代码如下
pd.set_option('display.float_format', '{:.2f}%'.format)
df_test
例如我们希望在数字面前添加货币符号,代码如下
pd.set_option('display.float_format', '${:.2f}'.format)
df_test
改变图表绘制的后端
默认的Pandas
模块对图表的绘制是以matplotlib
为后端的,但是以此为后端绘制出来的图表并不是动态可交互的,我们可以改成以plotly
或者是altair
为后端来绘制图表,
import pandas as pd
import numpy as np
pd.set_option('plotting.backend', 'altair')
data = pd.Series(np.random.randn(100).cumsum())
data.plot()
重置回默认的配置
除了上面小编介绍的配置之外,大家也可以自行对数据集的展示的配置进行调整,首先我们看一下总共有哪些配置可以供我们来调整
pd.describe_option()
output
要是我们指定想要看横轴方向上的配置,可以这么来做
pd.describe_option("rows")
output
依次我们可以对最大展示出来的行数、最少展示出来的行数进行调整,而要是你想将所有的配置还原成默认值,可以这么来做
pd.reset_option('all')
往
期
回
顾
资讯
Meta开发AI语音助手,助力元宇宙
技术
Python批量处理 Excel 数据
技术
20个Pandas数据实战案例,干货多
资讯
隐患:神经网络可以隐藏恶意软件
分享
点收藏
点点赞
点在看
相关文章:

MySQL基本概念
1. 分清几个概念:数据库,数据库对象和数据; 数据库分为:系统数据库和用户数据库; 系统数据库 是安装完MySQL服务器后自带的数据库,会记录一些必要的信息,用户不能直接修改这些系统数据库。转载…

SpringMvc+ajax实现文件跨域上传
最近开始学习SpringMVC框架,在学习数据绑定的时候,发现可以使用RequestParam注解绑定请求数据,实现了文件上传。但是如果一个项目是前后端分离的,前端系统向后端服务上传文件该怎么解决了? 首先考虑前端用哪一种方式进…

使用Nmap获取目标服务器开放的服务以及操作系统信息
http://nmap.org/download.html 1.下载安装rpm -vhU http://nmap.org/dist/nmap-5.61TEST5-1.i386.rpmrpm -vhU http://nmap.org/dist/zenmap-5.61TEST5-1.noarch.rpmrpm -vhU http://nmap.org/dist/ncat-5.61TEST5-1.i386.rpmrpm -vhU http://nmap.org/dist/nping-0.5.61TEST5…

Pandas 数据类型概述与转换实战
作者 | 周萝卜 来源 | 萝卜大杂烩 在进行数据分析时,确保使用正确的数据类型是很重要的,否则我们可能会得到意想不到的结果或甚至是错误结果。对于 pandas 来说,它会在许多情况下自动推断出数据类型 尽管 pandas 已经自我推断的很好了&#x…

7.10 数据注解特性--NotMapped
NotMapped特性可以应用到领域类的属性中,Code-First默认的约定,是为所有带有get,和set属性选择器的属性创建数据列。。 NotManpped特性打破了这个约定,你可以使用NotMapped特性到某个属性上面,然后Code-First就不会为这个属性就不…

Condition
2019独角兽企业重金招聘Python工程师标准>>> 1、Condition的简介 线程通信中的互斥除了用synchronized、Object类的wait()和notify()/notifyAll()方式实现外,方法JDK1.5中提供的Condition配套Lock可以实现相同的功能。Condition中的await()和signal()/si…

使用who.is查域名DNS信息以及用sameip.org查其他网站
www.who.is网站可以查域名信息,非常好用:例如查 hack-test.com然后我们可以找找同个IP上的其他站点(旁站:sameip.org)参考: 黑客是怎么攻击一个网站的?

基于 OpenCV 的人脸追踪
作者 | 努比 来源 | 小白学视觉 在Raspberry上启动项目很简单,所以让我们开始吧。 01. 产品清单 Raspberry Pi 4 Model B — 4GB 适用于Raspberry Pi的Pan-Tilt HAT Pi Camera v2 8MP 微型SD卡 迷你HDMI电缆 Raspberry Pi摄像头电缆—尺寸:457mm x …

-bash: /bin/rm: Argument list too long的解决办法
-bash: /bin/rm: Argument list too long的解决办法 当目录下文件太多时,用rm删除文件会报错: -bash: /bin/rm: Argument list too long 提示文件数目太多。 解决的办法是使用如下命令: ls | xargs -n 10 rm -fr ls 输出所有的文件名(用…

React使用ES6语法重构组件代码
首次使用react,要注意react不同版本库,是ES5还是ES6的写法,如何做到统一。下面对于ES6语法重构组件的代码如下:(1)原始代码: <script type"text/babel">var destinationdocumen…

PHP哈希表碰撞攻击原理
哈希表碰撞攻击(Hashtable collisions as DOS attack)的话题不断被提起,各种语言纷纷中招。本文结合PHP内核源码,聊一聊这种攻击的原理及实现。 哈希表碰撞攻击的基本原理 哈希表是一种查找效率极高的数据结构,很多语言…

Java8(jdk1.8)中文档注释处理工具javadoc的环境参量配置及使用方法
Java8(jdk1.8)中文档注释处理工具javadoc的环境参量配置及使用方法Java语言提供了一种功能强大的注释形式:文档注释。如果编写Java源代码时添加了合适的文档注释,然后通过JDK提供的javadoc工具可以直接将源代码里的文档注释提取成一份系统的API文档。jav…

如何读取Excel表格中不同sheet表的同一位置单元格数据,并绘制条形图呢?
作者 | 黄伟呢来源 | 数据分析与统计学之美今天,有位朋友在群里面咨询了一个问题:如何读取Excel表格中"不同sheet表"的同一位置单元格数据,并绘制条形图呢?有人提议用vba,但是不得不说,没有学过v…

vue-router学习笔记
配置路由模式 const routernew VueRouter({routes }) hash模式(默认):通过url的hash来模拟一个完整的url,于是当url改变时,页面不会重新加载。history模式:通过history完成url跳转而不需要重新加载页面。注意:为了防止404错误&…

PHP防止注入攻击
注入攻击不多说了PHP addslashes() 函数--单撇号加斜线转义PHP String 函数定义和用法addslashes() 函数在指定的预定义字符前添加反斜杠。这些预定义字符是:单引号 ()双引号 (")反斜杠 (\)NULL语法addslashes(string)参数描述string必需。规定要检查的字符串。…

首届腾讯数字安全创新大赛在京启动,挖掘新锐力量推动产业创新
3月10日,首届腾讯数字安全创新大赛在京正式启动。本次大赛由腾讯安全和中国产业互联网发展联盟联合主办,腾讯安全、KEEN、元起资本、赛博英杰、数世咨询等多家企业联合发起,中国产业互联网发展联盟安全专委会承办。 大赛旨在寻找网络安全新力…

oracle数据库无监听程序
在电脑---服务---启动oracle tns 如果还是出现错误的话,找到Net Manager,将网络的ip监听删除,将本机的主机名配好,即可打开tns服务 转载于:https://www.cnblogs.com/jiangsheng3/p/5025201.html

个人开发者即时到账收款方案 BufPay.com
BufPay 个人即时到账支付平台前言 作为独立开发者,一般只有一个人独立奋战,做出了产品需要收款是非常麻烦的,接入支付宝微信支付都需要公司公户,而注册公司、开公户等一系列操作非常麻烦,成本也很高一年也要 1w 左右。…

用 Python 制作数据大屏,超简单
作者 | 俊欣来源 | 关于数据分析与可视化今天我们用Streamlit模块来制作一个数据面板,将数据更加直观地呈现给别人观看,整个页面大致如下图所示:制作工具栏在页面的左侧是一个工具栏,工具栏中有多个按钮,分别是“About…

Oracle 12C -- 清空audit记录
1.使用job清空 SQL> dbms_audit_mgmt.create_purge_job(audit_trail_type> DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,audit_trail_purge_interval>12,audit_trail_purge_name>audit_trail_pj,use_last_arch_timestamp>TRUE,container>dbms_audit_mgm…

魔法引用函数magic_quotes_gpc和magic_quotes_runtime的区别和用法
PHP提供两个方便我们引用数据的魔法引用函数magic_quotes_gpc和magic_quotes_runtime, 这两个函数如果在php.ini设置为ON的时候,就会为我们引用的数据碰到单引号和双引号"是自动加上反斜线,帮我们自动转译符号,确保数据操作的…
Unity脚本生成插件:Script Create Dialog
最近写代码又犯懒了...感觉每次新建脚本都要写一堆简单重复的东西好无聊,所以搜索了一下有没有自动生成脚本的插件。结果还真被我发现了,官方在N久之前就制作了自动生成脚本的插件[Script Create Dialog],大概是名字起的和脚本生成器相差太多…

多路IO复用模型 select epoll 等
同步阻塞IO在等待数据就绪上花去太多时间,而传统的同步非阻塞IO虽然不会阻塞进程,但是结合轮询来判断数据是否就绪仍然会耗费大量的CPU时间。多路IO复用提供了对大量文件描述符进行就绪检查的高性能方案。selectselect诞生于4.2BSD,在几乎所有…

可操作性强!Python实现一个电影订票系统!
来源丨Python小二一、效果展示通过Python实现一个电影订票系统,效果如下所示:二、整体结构图三、代码分解3.1 infos.py一部电影的详细信息适合用 字典 结构来存储,我们可以给字典里添加多个键值对来保存电影的名称、座位表和宣传时用的字符画…

centos7 install mysql
1. 下载mysql的repo源 $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 2. 安装mysql-community-release-el7-5.noarch.rpm包 $ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm 安装这个包后,会获得两个mysql的yum repo源&#x…

unity加载ab后,场景shader不起效问题(物件表现黑色)
需要把unity自带的shader,加入到默认列表转载于:https://www.cnblogs.com/lancidie/p/9293827.html

Linux下各类TCP网络服务器的实现源代码
http://www.linuxeden.com/forum/t146870.html大家都知道各类网络服务器程序的编写步骤,并且都知道网络服务器就两大类:循环服务和并发服务。这里附上源代码来个小结吧。首先,循环网络服务器编程实现的步骤是这样的: 这种服务器模…

ReferenceQueue的使用
转:http://www.iflym.com/index.php/java-programe/201407140001.html 1 何为ReferenceQueue 在java的引用体系中,存在着强引用,软引用,虚引用,幽灵引用,这4种引用类型。在正常的使用过程中,我们…

红帽、Docker、SUSE 在俄罗斯停服
国际局势给技术圈带来的影响依然在蔓延。整理 | 苏宓出品 | CSDN(ID:CSDNnews)继 Oracle、Google、苹果等科技公司和 React 开源项目之后,如今 Linux 发行版也牵扯进俄乌之间冲突的漩涡中。其中一个是全球最大的独立开源软件公…

配置linux-Fedora系统下iptables防火墙
参考地址:https://blog.csdn.net/zhangjingyi111/article/details/78902820 本篇文章为实验课过程记录,较为简略。 1.查看系统是否安装iptables 命令:iptables --version 2.开启iptables 命令:service iptables start 出现错误&am…