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

【第二月_day7】Pandas 简介与数据结构_Pandas_ day1

以下是专为小白设计的 Pandas 简介与数据结构 学习内容,用最通俗的语言和案例讲解核心概念:


一、安装 Pandas

1. 安装方法
  • 打开电脑的命令提示符(Windows)或终端(Mac/Linux)
  • 输入以下命令并回车:
    pip install pandas
    
  • 安装完成后,输入 python 进入 Python 环境,输入 import pandas as pd 验证是否成功(不报错即可)

二、Pandas 的核心数据结构

1. Series(一维数据)
  • 定义:像一个带标签的列表,比如一列Excel数据

  • 创建方法

    import pandas as pd
    
    # 用列表创建
    s1 = pd.Series([10, 20, 30, 40])
    
    # 自定义索引(类似给数据加名字)
    s2 = pd.Series([5, 3, 8], index=['苹果', '香蕉', '橘子'])
    
  • 基础操作

    # 查看数据
    print(s2.values)  # 输出数据:[5, 3, 8]
    print(s2.index)   # 输出索引:['苹果', '香蕉', '橘子']
    
    # 按索引取值
    print(s2['香蕉'])  # 输出 3
    
    # 简单计算
    print(s2 + 2)     # 所有数据加2 → 苹果7, 香蕉5, 橘子10
    
2. DataFrame(二维表格)
  • 定义:像 Excel 表格,由多列 Series 组成

  • 创建方法

    # 用字典创建(最常用)
    data = {
      '姓名': ['张三', '李四', '王五'],
      '年龄': [20, 25, 22],
      '城市': ['北京', '上海', '广州']
    }
    df = pd.DataFrame(data)
    
  • 显示表格

    print(df)
    # 输出:
    #    姓名  年龄  城市
    # 0 张三  20  北京
    # 1 李四  25  上海
    # 2 王五  22  广州
    
  • 核心概念

    • 列名:表格的标题(如‘姓名’、‘年龄’)
    • 索引:最左边的数字(0,1,2),类似行号

三、Series vs DataFrame

特性SeriesDataFrame
维度一维(单列)二维(多列)
数据形式单列数据+索引多列数据+列名+索引
常用场景存储单列数据(如温度)存储完整表格(如成绩单)

四、DataFrame 的常用操作

1. 查看数据
df.head(2)    # 查看前2行
df.tail(1)    # 查看最后1行
df.shape      # 显示表格形状(行数, 列数)
2. 选择数据
# 选择列
df['姓名']     # 获取“姓名”列(返回Series)
df[['姓名', '年龄']]  # 选择多列(返回DataFrame)

# 选择行
df.iloc[0]    # 通过数字索引选第1行
df.loc[0]     # 同上(简单场景)
3. 添加/删除列
# 添加新列
df['性别'] = ['男', '女', '男']

# 删除列
df.drop('城市', axis=1, inplace=True)  # axis=1表示列
4. 读取文件(实战)
# 读取CSV文件(比如从Excel导出的数据)
df = pd.read_csv('data.csv')

五、小练习

  1. 创建一个 Series,记录一周温度:周一18℃,周二20℃,周三22℃
  2. 创建一个 DataFrame,包含三列:商品名称(苹果、香蕉)、价格(5、3)、库存(10、8)
  3. 尝试从 DataFrame 中筛选出价格大于4元的商品

通过这个教程,你已经能用 Pandas 处理简单的表格数据啦!下一步可以学习数据清洗和统计计算 🚀

相关文章:

  • kafka删除/创建 topic报错,如何解决
  • Go常见问题与答案笔记(上)
  • 如何给poco f4(redmi k40s)刷入twrp或orange fox
  • 解锁DeepSeek潜能:Docker+Ollama打造本地大模型部署新范式
  • 在 Ubuntu 中配置开机自启动脚本并激活 Anaconda 环境
  • 【GoLang】调用llm时提示词prompt的介绍以及使用方式
  • 玄机-第五章 linux实战-CMS01的测试报告
  • 【拒绝算法PUA】LeetCode 2255. 统计是给定字符串前缀的字符串数目
  • 在Luckfox上使用EdgeVoice语音助手
  • 欢迎来到未来:探索 Dify 开源大语言模型应用开发平台
  • Flutter项目升级到指定版本的详细步骤指南
  • 解决IDEA中maven找不到依赖项的问题
  • TCP传输---计算机网络
  • 【C/C++算法】从浅到深学习--- 简单模拟算法(图文兼备 + 源码详解)
  • 基于深度学习的图片识别系统(上)
  • 数据库分类、存储引擎、介绍、Mysql、SQL分类
  • SpringBoot接口防抖(防重复提交)的一些实现方案
  • 【开源宝藏】30天学会CSS - DAY7 第七课 CSS 关键帧打造Preloader 追逐动画
  • search_fields与filterset_fields的使用
  • Linux fority source和__builtin_xxx
  • 专访 | 杜普兰蒂斯:爱上中国文化,下一步努力提升速度
  • 金砖国家外长会晤落幕,外交部:发出了反对单边霸凌行径的“金砖声音”
  • 国泰海通合并后首份业绩报告出炉:一季度净利润增逾391%
  • 解放日报:持续拿出排头兵姿态先行者担当
  • 东风着陆场近日气象条件满足神舟十九号安全返回要求
  • 160名老人报旅行团被扔服务区?张家界官方通报