当前位置: 首页 > news >正文

pandas基本数据

🧩 题目一:VP33 牛客网的刷题数据

📄 题目描述

牛客网的用户数据记录在文件 Nowcoder.csv 中,包含如下字段(字段之间以逗号间隔):

  • Nowcoder_ID:用户 ID
  • Level:等级
  • Achievement_value:成就值

牛牛想要获取该文件中每一列的列名,以及该文件包含了多少位用户的数据,请你帮他输出。

输入描述
数据集直接从当前目录下的 Nowcoder.csv 文件中读取。

输出描述
第一行以列表形式输出所有列名,第二行直接输出总用户数。


✅ 参考代码

import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',', dtype=object)
col = [column for column in Nowcoder]
print(col)
print(Nowcoder.shape[0])

🔍 核心知识点解析

代码说明
import pandas as pd导入 pandas 库,pd 是常用简称
pd.read_csv(...)读取 CSV 文件,返回 DataFrame
sep=','指定分隔符为逗号(默认可省略)
dtype=object所有列以“文本”类型读取,避免数字被自动转换
for column in Nowcoder遍历 DataFrame 时,默认遍历列名
Nowcoder.shape[0]shape 返回 (行数, 列数)[0] 取行数(即用户数)

💡 更简洁写法(推荐)

print(Nowcoder.columns.tolist())  # 直接获取列名列表
print(len(Nowcoder))               # 直接获取行数

🧩 题目二:VP34 店铺的订单

📄 题目描述

某线下店铺的销售记录在 Order.csv 中,包含如下字段(字段之间以逗号间隔):

  • order_number:订单号
  • product_type:产品类型(如 phone、pad、watch)
  • price:价格
  • time:购买时间

店长想查看手机订单(phone)的全部信息,请使用 pandas 输出。

输入描述
数据集直接从当前目录下的 Order.csv 文件中读取。

输出描述
直接输出产品类型为 phone 的全部信息,包括行号。


✅ 参考代码

import pandas as pd
shop = pd.read_csv('Order.csv', sep=',', dtype=object)
print(shop[shop['product_type'] == 'phone'])

🔍 核心知识点解析

关键技术:布尔索引(Boolean Indexing)
shop['product_type'] == 'phone'
  • 返回一个 True/False 的 Series,表示每行是否为手机订单
shop[...]
  • 使用布尔序列筛选原数据,只保留 True 的行

✅ 输出自动包含原始行号(index),符合题目要求。


💡 扩展:常用筛选方式

需求写法
等于df[df['col'] == 'value']
不等于df[df['col'] != 'value']
多条件(且)(df['A']=='X') & (df['B']=='Y')
多条件(或)(df['A']=='X') | (df['B']=='Y')
模糊匹配df[df['col'].str.contains('phone')]
多值匹配df[df['col'].isin(['phone', 'watch'])]

⚠️ 注意:&| 必须加括号,不能用 and/or


🧰 Pandas 复习要点速查表

操作代码示例
读取 CSVpd.read_csv('file.csv')
查看前几行df.head()
查看列名df.columns.tolist()
获取行数len(df) 或 df.shape[0]
布尔筛选df[df['col'] == 'value']
多条件筛选(df['A']==1) & (df['B']==2)
数据类型df.dtypes
查看信息df.info()

⚠️ 常见注意事项

  1. 文件路径:确保 Nowcoder.csv 和 Order.csv 在代码同目录下。
  2. 编码问题:如遇中文乱码,加参数 encoding='utf-8'
  3. 数据类型dtype=object 时,数字是字符串,不能直接计算,需用 pd.to_numeric() 转换。
  4. 空值处理:缺失值为 NaN,可用 df.dropna() 或 df.fillna(0) 处理。


🎯 一句话复习总结
pandas 的核心是 DataFrame,用 read_csv 读数据,用 布尔索引 筛数据,用 .shape.columns 看结构。

http://www.dtcms.com/a/338305.html

相关文章:

  • 开疆智能Profient转EtherCAT网关连接伦茨变频器配置案例
  • DeepSeek辅助编写的将ET格式文件转换为xls和xlsb格式程序
  • 数据结构:查找表
  • Unity爆炸力场实战指南
  • 94、23种设计模式之工厂方法模式
  • 循序渐进学 Spring (下):从注解、AOP到底层原理与整合实战
  • SpringBoot 自研运行时 SQL 调用树,3 分钟定位慢 SQL!
  • SpringBoot3整合OpenAPI3(Swagger3)完整指南
  • 王树森深度强化学习DRL(三)围棋AlphaGo+蒙特卡洛
  • Laravel中如何使用php-casbin
  • MP4 文件格式验证工具
  • onRequestHide at ORIGIN_CLIENT reason HIDE_SOFT_INPUT fromUser false
  • kafka的pull的依据
  • python 数据拟合(线性拟合、多项式回归)
  • 【2025CVPR-目标检测方向】学习稳健且硬件自适应的对象检测器,以应对边缘设备的延迟攻击
  • 【K8s】K8s 服务优雅下线调试记录
  • C# NX二次开发:字符串控件StringBlock讲解
  • 【MongoDB】常见八股合集,mongodb的特性,索引使用,优化,事务,ACID,聚合查询,数据复制机制,理解其基于raft的选举机制
  • 虚拟货币(BTC)走势分析指标体系
  • JMeter与大模型融合应用之构建AI智能体:评审性能测试脚本
  • 浅入浅出常见敏感数据处理的加密算法
  • 如何在 Ubuntu 24.04 或 22.04 LTS 上安装 PowerShell
  • SHA-256 详解
  • UE5 批量编译蓝图技巧
  • Linux Miniconda安装教程与conda常用指令介绍
  • 区块链数字存证应用
  • 健身房预约系统SSM+Mybatis实现(四、登录页面+JWT+注销)
  • 【前端智能化】AG-UI实践及原理浅析
  • 决策树的笔记
  • steal tsoding‘s pastebeam code as go server