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

投资网站维护移动广告联盟

投资网站维护,移动广告联盟,商务网站建设公,外贸自助建站哪个好🎯 今日目标 学会识别和处理缺失数据(NaN)学会删除/填补缺失值清理重复数据修改列类型,准备数据分析 🧼 一、缺失值处理(NaN) ✅ 1. 检查缺失值 import pandas as pd df pd.read_csv("…

🎯 今日目标

  • 学会识别和处理缺失数据(NaN)
  • 学会删除/填补缺失值
  • 清理重复数据
  • 修改列类型,准备数据分析

🧼 一、缺失值处理(NaN)

✅ 1. 检查缺失值
import pandas as pd
df = pd.read_csv("students.csv")print(df.isnull())        # 每个元素是否为 NaN
print(df.isnull().sum())  # 每列缺失值数量
✅ 2. 删除缺失数据
df.dropna()            # 删除包含 NaN 的行
df.dropna(axis=1)      # 删除包含 NaN 的列

inplace=True 参数可以就地修改,不返回新对象。

✅ 3. 填充缺失数据
df.fillna(0)               # 全部填 0
df["成绩"].fillna(df["成绩"].mean())   # 用均值填充
df.fillna(method="ffill")  # 用上一行填
df.fillna(method="bfill")  # 用下一行填

🔁 二、重复值处理

✅ 1. 检测重复数据

df.duplicated()            # 标记每行是否重复(默认所有列)
df.duplicated(subset=["姓名"])  # 指定列检查

✅ 2. 删除重复数据

df.drop_duplicates(inplace=True)

🔧 三、数据类型转换

df["成绩"] = df["成绩"].astype(float)
df["是否及格"] = df["是否及格"].astype(bool)

可以使用 df.dtypes 查看所有列的数据类型。


🧪 今日练习任务

使用以下示例数据,完成清洗操作:

姓名,性别,成绩,是否及格
张三,男,88,True
李四,女,,True
王五,男,59,False
张三,男,88,True
赵六,,92,True
田七,女,NaN,

📝 任务:

  1. 加载该 CSV 文件为 DataFrame

  2. 检查每列缺失值数量

  3. 删除性别缺失的行

  4. 用“成绩”列均值填补成绩缺失值

  5. 删除重复的行(姓名、成绩相同)

  6. 将“成绩”列类型设置为 float,将“是否及格”填补为 False

    import pandas as pd
    import os# 路径设置
    input_path = "./data/students_dirty.csv"
    output_path = "./data/students_cleaned.csv"# 确保输出目录存在
    os.makedirs(os.path.dirname(output_path), exist_ok=True)# 加载原始数据
    df = pd.read_csv(input_path)
    print("原始数据:")
    print(df)# 1. 检查每列缺失值数量
    print("\n缺失值统计:")
    print(df.isnull().sum())# 2. 删除性别缺失的行
    df = df.dropna(subset=["性别"])# 3. 用“成绩”列均值填补缺失值
    # 保留整数部分,四舍五入到整数
    mean_score = df["成绩"].mean().round()
    df["成绩"] = df["成绩"].fillna(mean_score)# 4. 删除重复的行(默认检查所有列)
    df = df.drop_duplicates()# 5. 填补“是否及格”空缺值为 False
    with pd.option_context("future.no_silent_downcasting", True):df = df.fillna(False).infer_objects(copy=False)# 6. 数据类型转换
    df["成绩"] = df["成绩"].astype(float)
    df["是否及格"] = df["是否及格"].astype(bool)# 显示清洗结果
    print("\n清洗后的数据:")
    print(df)# 保存结果
    df.to_csv(output_path, index=False, encoding="utf-8")
    print(f"\n✅ 清洗后的数据已保存至 {output_path}")
    

    ✅ 示例输出(清洗后)

    原始数据:姓名   性别    成绩   是否及格
    0  张三    男  88.0   True
    1  李四    女   NaN   True
    2  王五    男  59.0  False
    3  张三    男  88.0   True
    4  赵六  NaN  92.0   True
    5  田七    女   NaN    NaN缺失值统计:
    姓名      0
    性别      1
    成绩      2
    是否及格    1
    dtype: int64清洗后的数据:姓名 性别    成绩   是否及格
    0  张三  男  88.0   True
    1  李四  女  78.0   True
    2  王五  男  59.0  False
    5  田七  女  78.0  False✅ 清洗后的数据已保存至 ./data/students_cleaned.csv
    
         姓名 性别    成绩 是否及格
    0    张三  男  88.0   True
    1    李四  女  79.7   True
    2    王五  男  59.0  False
    3    田七  女  79.7  False
    

    在这里插入图片描述


✍️ 今日总结

  • 掌握了 dropna()fillna()drop_duplicates() 等数据清洗方法
  • 学会判断和填补缺失值
  • 理解了数据类型转换在分析前的重要性
http://www.dtcms.com/wzjs/234264.html

相关文章:

  • 济南槐荫网站开发公司百度代发收录
  • 企业商务网站建设论文百度公司好进吗
  • 九江做网站哪家便宜线上广告
  • 百斯特网站建设凡科建站app
  • 龙游做网站建站平台哪个比较权威
  • 网站建设制作设计营销 上海下载浏览器
  • 网站规划的缩略图电商代运营收费标准
  • 做网站和seo哪个好希爱力的作用与功效
  • 响应式网站框架整合营销传播案例
  • 福州建设工程招投标信息网seo网站营销推广
  • 一级a做爰片免费网站无毒站内优化
  • 英文专业的网站设计ai智能营销系统
  • 济南网站优化百度站长平台网址
  • 做设计的网站商家入驻灰色词网站seo
  • 网站制作新手教程优化关键词有哪些方法
  • 为什么南极建站在2月广州十大营销策划公司
  • 怎样做seo网站链接提高seo关键词排名
  • 建设银行梅李分行网站建设网站前的市场分析
  • 手机网站建设方案东莞网络推广平台
  • 怎么做游戏试玩网站学大教育培训机构电话
  • 做网站接私活百度搜索引擎的优缺点
  • abc网站建设怎么样网络游戏排行榜百度风云榜
  • 怎么查域名的注册人sem优化是什么
  • 手机网站模板百度指数是免费的吗
  • 做网站的公司 洛阳seo搜索引擎优化实训报告
  • 彩票网站开发. 极云互动营销是什么
  • WordPress pwa北京搜索引擎优化管理专员
  • 嘉兴企业网站开发哪个平台做推广效果好
  • 营销型网站测评方法页面优化
  • 国外专门做杂志的共享网站网站建成后应该如何推广