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

【第2月_day10】Pandas数据查看与选择

以下是专为小白设计的 Pandas数据查看与选择 学习内容,从基础到应用逐步讲解,附带清晰示例和注意事项:


一、数据查看:快速了解你的数据

1. head()tail()
  • 作用:查看数据的前几行或后几行,默认显示5行。
  • 示例
    import pandas as pd
    df = pd.read_csv("data.csv")  # 假设读取了一个数据表
    
    # 查看前3行
    print(df.head(3))  
    # 查看后2行
    print(df.tail(2))
    
2. info()
  • 作用:显示数据的基本信息(行数、列名、数据类型、非空值数量)。
  • 示例
    df.info()
    
    输出示例
    <class 'pandas.core.frame.DataFrame'>
    RangeIndex: 100 entries, 0 to 99
    Data columns (total 3 columns):
     #   Column  Non-Null Count  Dtype  
    ---  ------  --------------  -----  
     0   Name    100 non-null    object 
     1   Age     95 non-null     float64
     2   Score   90 non-null     float64
    
3. describe()
  • 作用:生成数值型列的统计摘要(均值、标准差、最小值、最大值等)。
  • 示例
    df.describe()
    
    输出示例
                 Age       Score
    count   95.000000   90.000000
    mean    28.526316   85.300000
    std      4.123456    5.678901
    min     18.000000   60.000000
    25%     25.000000   82.000000
    50%     28.000000   85.000000
    75%     32.000000   89.000000
    max     40.000000   99.000000
    

二、数据选择:精准定位你要的数据

1. 列选择
  • 方法1:直接通过列名选择单列(返回Series)。
    df["Name"]  # 选择“Name”列
    
  • 方法2:选择多列(返回DataFrame)。
    df[["Name", "Score"]]  # 同时选择两列
    
  • 方法3:用点符号选择列(仅限列名无空格、无特殊符号时)。
    df.Age  # 等效于 df["Age"]
    
2. 行选择
  • 方法1:通过行索引标签选择(loc)。
    df.loc[0]      # 选择索引为0的行
    df.loc[0:5]    # 选择索引0到5的行(包含5)
    
  • 方法2:通过行位置选择(iloc)。
    df.iloc[0]     # 选择第1行
    df.iloc[0:5]   # 选择第1到第5行(不包含5)
    
3. 条件筛选
  • 单条件筛选
    # 筛选年龄大于30的行
    df[df["Age"] > 30]
    
  • 多条件组合
    # 筛选年龄>25 且 分数>80的行(注意括号)
    df[(df["Age"] > 25) & (df["Score"] > 80)]
    
  • 模糊匹配
    # 筛选名字包含“张”的行
    df[df["Name"].str.contains("张")]
    

三、常见问题与注意事项

  1. 为什么用 lociloc

    • loc 按标签选择(如索引名是字符串时用),iloc 按位置选择(类似列表索引)。
  2. 条件筛选后如何修改数据?

    • 先筛选再赋值,避免链式操作:
      df.loc[df["Age"] > 30, "Score"] = 100  # 正确写法
      
  3. 为什么 df[df.Age > 30] 可以运行?

    • 这是条件筛选的简写形式,等价于 df[df["Age"] > 30]

四、实际应用场景示例

  1. 查看数据概览

    df.head()      # 看前5行
    df.describe()  # 分析数值分布
    
  2. 提取关键信息

    high_score = df[df["Score"] > 90]  # 筛选高分学生
    
  3. 处理缺失值

    df.dropna(subset=["Age"])  # 删除“Age”列缺失的行
    

五、练习小任务

  1. 加载你的数据集,用 head(10) 查看前10行。
  2. info() 查看数据有多少列,哪些列有缺失值?
  3. 筛选出“年龄”大于25岁且“分数”低于60分的所有行。

通过这4个查看方法和3种选择操作,你已经可以快速上手Pandas的基础数据处理啦!后续可学习更复杂的操作如分组、合并等。


http://www.kler.cn/a/610479.html

相关文章:

  • word取消交叉引用方法的同时保留原本显示的文字(三种方法)
  • 答疑解惑:EMC VMAX3 MMCS控制台不定期重启原因分析
  • 那些正常的动态规划
  • 测试用例生成平台通过大模型升级查询功能,生成智能测试用例
  • Python:计算机二级:简单应用
  • 动态规划-01背包
  • MATLAB 控制系统设计与仿真 - 29
  • 如何自动规整化(格式化)HTML
  • cmd命令查看电脑的CPU、内存、存储量
  • 数据库理论基础
  • 容联云创始人孙昌勋:金融大模型应用,做出场景化应用比技术的先进更重要
  • 【组件安装】Ubuntu 22.04.5 desktop 安装 Anyware Agent
  • 逻辑回归(Logistic Regression)模型的概率预测函数
  • Objective-C语言的数据可视化
  • 机器人原点丢失后找回原点的解决方案与步骤
  • 微信小程序-通用印刷体识别cv/ocr/comm报media data missing hint错
  • 光谱范围与颜色感知的关系
  • [AI绘图] ComfyUI 中自定义节点插件安装方法
  • 加油站小程序实战教程01首页搭建
  • Java 大视界 -- 基于 Java 的大数据分布式系统的监控与运维实践(155)