【Python】进阶学习:pandas--info()用法详解

【Python】进阶学习:pandas–info()用法详解
在这里插入图片描述

🌈 个人主页:高斯小哥
🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订阅和支持~
💡 创作高质量博文(平均质量分92+),分享更多关于深度学习、PyTorch、Python领域的优质内容!(希望得到您的关注~)


🌵文章目录🌵

  • 📚 一、初识`info()`函数
  • 💻 二、`info()`函数的基本用法
  • 🔍 三、定制`info()`函数的输出
  • 📚 四、总结
  • 🤝 五、期待与你共同进步

📚 一、初识info()函数

  在pandas库中,info()函数是一个DataFrame和Series对象的方法,用于获取有关数据结构的简要摘要。通过调用info()函数,我们可以快速了解数据集中的基本信息,如行数、列数、列的数据类型、非空值的数量以及内存使用情况等。

💻 二、info()函数的基本用法

  info()函数的基本用法非常简单,只需在DataFrame或Series对象上调用即可。

import pandas as pd# 创建一个示例DataFrame
data = {'A': [1, 2, 3, None],'B': [4, None, 6, 8],'C': ['p', 'q', 'r', 's']
}
df = pd.DataFrame(data)# 调用info()函数
df.info()

上述代码将输出DataFrame的简要摘要,包括索引类型、列名、非空值的数量以及每列的数据类型:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):#   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  0   A       3 non-null      float641   B       3 non-null      float642   C       4 non-null      object 
dtypes: float64(2), object(1)
memory usage: 224.0+ bytes

🔍 三、定制info()函数的输出

  info()函数提供了一些可选参数,用于定制输出的内容。以下是 info() 函数的主要参数及其描述:

  1. verbose(布尔值,默认为 True):

    • 控制输出的详细程度。如果为 True,则会显示每列的详细信息,包括非空值的数量。如果为 False,则只显示摘要信息。
  2. buf(可写缓冲区,默认为 None):

    • 指定一个可写缓冲区,如文件对象或 StringIO 对象,用于将输出写入。如果提供了这个参数,info() 函数不会将输出直接打印到控制台,而是写入到指定的缓冲区。
  3. memory_usage(布尔值或字符串,默认为 None):

    • 控制是否显示内存使用情况。如果为 True,则会显示每列占用的内存大小。如果为字符串,则可以指定内存使用的单位,如 'deep' 表示深度内存使用。如果为 None,则不显示内存使用情况。
  4. show_counts(布尔值,默认为 None):

    • 控制是否显示非空值的数量。如果为 True,则会显示每列中非空值的数量。如果为 False,则不显示这个信息。当 verboseFalse 时,这个参数将被忽略。

示例代码:

import pandas as pd# 创建一个示例DataFrame
data = {'A': [1, 2, 3, None],'B': [4, None, 6, 8],'C': ['p', 'q', 'r', 's']
}
df = pd.DataFrame(data)# 调用info()函数
# verbose = False
df.info(verbose=False)print("*"*50)
print("*"*50)# 指定一个[可写]缓冲区
with open("result.txt", "w") as f:df.info(buf=f)print("相关信息已写入result.txt!")
print("*"*50)
print("*"*50)# memory_usage
df.info(memory_usage="deep")
print("*"*50)
df.info(memory_usage=True)
print("*"*50)
df.info(memory_usage=False)print("\n" + "*"*50)
print("*"*50)# show_counts
df.info(show_counts=True)
print("\n" + "*"*50)
df.info(show_counts=False)

输出:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Columns: 3 entries, A to C
dtypes: float64(2), object(1)
memory usage: 224.0+ bytes
**************************************************
**************************************************
相关信息已写入result.txt!
**************************************************
**************************************************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):#   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  0   A       3 non-null      float641   B       3 non-null      float642   C       4 non-null      object 
dtypes: float64(2), object(1)
memory usage: 424.0 bytes
**************************************************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):#   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  0   A       3 non-null      float641   B       3 non-null      float642   C       4 non-null      object 
dtypes: float64(2), object(1)
memory usage: 224.0+ bytes
**************************************************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):#   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  0   A       3 non-null      float641   B       3 non-null      float642   C       4 non-null      object 
dtypes: float64(2), object(1)
**************************************************
**************************************************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):#   Column  Non-Null Count  Dtype  
---  ------  --------------  -----  0   A       3 non-null      float641   B       3 non-null      float642   C       4 non-null      object 
dtypes: float64(2), object(1)
memory usage: 224.0+ bytes**************************************************
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 4 entries, 0 to 3
Data columns (total 3 columns):#   Column  Dtype  
---  ------  -----  0   A       float641   B       float642   C       object 
dtypes: float64(2), object(1)
memory usage: 224.0+ bytes

  通过合理设置这些参数,用户可以根据具体需求定制 info() 函数的输出内容,从而更有效地理解和分析数据集。这些参数使得 info() 函数在数据探索、数据清洗和预处理等阶段都非常有用。

📚 四、总结

  info()函数是pandas库中一个非常实用的函数,它可以帮助我们快速了解数据集的基本信息。通过灵活运用info()函数,我们可以更好地理解和处理数据,为后续的数据分析和建模提供有力支持。

🤝 五、期待与你共同进步

  🌱 亲爱的读者,非常感谢你每一次的停留和阅读!你的支持是我们前行的最大动力!🙏

  🌐 在这茫茫网海中,有你的关注,我们深感荣幸。你的每一次点赞👍、收藏🌟、评论💬和关注💖,都像是明灯一样照亮我们前行的道路,给予我们无比的鼓舞和力量。🌟

  📚 我们会继续努力,为你呈现更多精彩和有深度的内容。同时,我们非常欢迎你在评论区留下你的宝贵意见和建议,让我们共同进步,共同成长!💬

  💪 无论你在编程的道路上遇到什么困难,都希望你能坚持下去,因为每一次的挫折都是通往成功的必经之路。我们期待与你一起书写编程的精彩篇章! 🎉

  🌈 最后,再次感谢你的厚爱与支持!愿你在编程的道路上越走越远,收获满满的成就和喜悦!祝你编程愉快!🎉

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蒙提霍尔问题

文章目录 1.简介2.答案3.直觉的错误参考文献 1.简介 蒙提霍尔问题&#xff08;Monty Hall problem&#xff09;是美国电视游戏节目《Let’s Make a Deal》中的一个问题&#xff0c;并以主持人 Monty Hall 命名。 蒙提霍尔问题也叫「三门问题」或「山羊汽车问题」。 假设您正…

超简单❗十步创建知识管理系统,效率开挂

真的想在一个行业深耕&#xff0c;建立一个知识管理系统是一件很棒的事。不光自己找起来思路清晰&#xff0c;给员工培训也是很方便的&#xff0c;很多刚入门的同事&#xff0c;在公司有详细的Sop流程情况下&#xff0c;简单培训就能上岗了。创建一个详细的知识管理系统可以按照…

Softmax 回归 + 损失函数 + 图片分类数据集【动手学深度学习v2】李沐动手学深度学习课程笔记

目录 Softmax回归 损失函数 图片分类数据集 Softmax回归从零开始实现 Softmax回归简洁实现 Softmax回归 回归和分类的区别 回归问题举例上节课的预测房价问题&#xff0c;分类问题就是对样本进行分类 回归和分类的具体区别 假设真实的类别为第i个类别&#xff08;值为1&#x…

Xcode 15 适配 MonkeyDev

升级到Xcode15后,使用Xcode创建MonkeyApp后,运行会报错,本篇文章主要讲述此过程遇到的错误和解决办法。 问题1:找不到libc++.dylib文件 问题描述: Build input files cannot be found: /usr/lib/libstdc++.dylib, /usr/lib/libc++.dylib. Did you forget to declare th…

新零售SaaS架构:订单履约系统的概念模型设计

订单履约系统的概念模型 订单&#xff1a;客户提交购物请求后&#xff0c;生成的买卖合同&#xff0c;通常包含客户信息、下单日期、所购买的商品或服务明细、价格、数量、收货地址以及支付方式等详细信息。 子订单&#xff1a;为了更高效地进行履约&#xff0c;大订单可能会被…

探索Java开发面试笔记:以听为目的,助力编程技术提升与面试准备

文章目录 一、制作背景介绍二、 Java开发面试笔记&#xff1a;为你的编程之路加速2.1 公众号主题和目标读者群体2.2 为什么面试笔记对于提高编程视野和技术至关重要2.3 親測效率 三、形式案例3.1 文章形式3.2 手机案例3.3 电脑案例 一、制作背景介绍 做公众号的背景&#xff1a…

爬取京东的商品详情数据/实现大批量数据采集API接口

在技术交流群&#xff0c;大家有探讨稳定获取京东商品主图、价格、标题&#xff0c;及sku的完整解决方案。这个引起了我技术挑战的兴趣。 目前&#xff0c;自己做了压测&#xff0c;QPS高、出滑块概率极低&#xff0c;API整体稳定&#xff0c;可满足业务场景的性能需求。 公共…

微课怎么录制?这里有一份完整教程!

随着在线教育的兴起&#xff0c;微课录制成为了教育领域中的一项重要技能。微课以短小精悍的视频形式&#xff0c;用来呈现某一知识点或技能点的教学内容。可是微课怎么录制呢&#xff1f;本文将介绍两种微课录制的方法&#xff0c;帮助教育工作者和学习者更好地掌握微课录制技…

网络学习:SMart link技术与Monitor link技术

目录 一、SMart link技术 1.1、SMart link技术简介 1.2、SMart link技术原理及基础知识点 1、应用场景&#xff08;举例&#xff09;&#xff1a; 2、运行机制 3、保护vlan 4、控制VLAN 5、Flush报文 6、SMart link的负载分担机制 7、SMart link角色抢占模式 二、Mo…

three.js如何实现简易3D机房?(一)基础准备-上

目录 一、tips 二、功能说明 1.模型初始化 2.功能交互 三、初始化准备 1.目录结构 2.创建三要素 3.创建轨道控制器 4.初始化灯光 5.适配 6.循环渲染 一、tips 1.three.js入门的相关基础性知识就不在此过多赘述了&#xff0c;可以自行提前了解 three.js docs&…

【Web - 框架 - Vue】随笔 - Vue的简单使用 - 快速上手

【Web - 框架 - Vue】随笔 - Vue的简单使用 - 快速上手 Vue模板代码 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>模板</title> </head> <body> <div></div>…

苹果因在iOS音乐流媒体市场上的反向引导行为,在欧盟被罚款18.4亿欧元

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…