数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—Pandas—pandas高级—训练场(1)(十一)

简介: 你好,感谢你能点进来本篇博客,请不要着急退出,相信我,如果你有一定的 Python 基础,想要学习 Python数据分析的三大库:numpy,pandas,matplotlib;这篇文章不会让你失望,本篇博客是 【AIoT阶段一(下)】 的内容:Python数据分析,

2.4 训练场

2.4.1 知识点概述

2.4.1.1 字符串替换

将字符串:“我在大学的体能极限是1000米3分34秒!” 中的“我”替换为“辰chen”,再将成绩转换为纯数字:

import numpy as np
import pandas as pd
s1 = '我在大学的体能极限是1000米3分34秒!'
# 把 '我' 替换为 '辰chen'
s1 = s1.replace('我', '辰chen')
display(s1)
# 将成绩转换为纯英文的
s2 = "3'34"
s2 = s2.replace('\'', '.')# \ 表示转义字符
s2 = float(s2)
display(s2)

image.png

2.4.1.2 报错演示

score = ["4'03", "4'34", "4'29", "3'48", "3'58", 4]
# for循环批量替换
for s in score:
    s = s.replace('\'', '.')
    print(s)

image.png

可以看出前几个数据都进行了正确的替换,只有最后一个数据因无法替换而报错,报错的原因在于最后一个数据是 int 类型的数据,是不能调用 replace 方法的,replace 只作用于字符串


所以我们在替换的过程中可以进行特判:


2.4.1.3 报错修复

使用 isinstance() 方法判断是否是字符串类型

score = ["4'03", "4'34", "4'29", "3'48", "3'58", 4]
# for循环批量替换
for s in score:
    # 判断s是不是字符串类型数据,这是一个新知识点
    if isinstance(s, str):
        s = s.replace('\'', '.')
    s = float(s)
    print(s, type(s))

image.png

2.4.2 体测成绩的部分转换

2.4.2.1 男生1000米跑成绩转换

首先我们需要下载一个 Excel 文件:

链接: https://pan.baidu.com/s/1msM5CSZxyJ3TZ5e3TG4XiQ?pwd=w3ut

提取码: w3ut

复制这段内容后打开百度网盘手机App,操作更方便哦

下载完成之后,把该文件和我们的代码放到同一个文件夹下,这一操作我们在之前的博客中已经反复说到,这里就不再进行演示

我们点开我们下载好的文件:

36.png

表格有男生表,也有女生表,在男生表中通过观察可以看出,只有 男1000米跑这一列数据是 xx'xx 的形式,我们要把它转为和 男50米跑,男跳远这样的数据形式,并且需要注意到,可能有些同学没有参加 1000米跑的测试,我们需要把这些空数据统一赋值为0

import pandas as pd
# 加载男生的体测成绩
# 方法一:
df_boy = pd.read_excel('./体测成绩.xlsx', sheet_name = 0)
# 方法二:
df_boy = pd.read_excel('./体测成绩.xlsx', sheet_name = '男生')
# 空数据处理:没有参加体能测试,成绩为0
df_boy = df_boy.fillna(0)
def convert(s):
    if isinstance(s, str):
        s = float(s.replace('\'', '.'))
    return s
df_boy['男1000米跑'].map(convert)

37.png

2.4.2.2 男生1000米跑成绩转换并赋值

import pandas as pd
# 加载男生的体测成绩
df_boy = pd.read_excel('./体测成绩.xlsx', sheet_name = 0)
# 空数据处理:没有参加体能测试,成绩为0
df_boy = df_boy.fillna(0)
def convert(s):
    if isinstance(s, str):
        s = float(s.replace('\'', '.'))
    return s
df_boy['男1000米跑'] = df_boy['男1000米跑'].map(convert)
# 保存数据,index = False表示不存储行索引
df_boy.to_excel('./男生体测成绩.xlsx', index = False)
# 查看前10个数据
df_boy.head(10)

38.png

对于女生数据,我们可以做同样的处理

import pandas as pd
# 加载女生的体测成绩
df_girl = pd.read_excel('./体测成绩.xlsx',sheet_name = 1)
# 空数据处理:没有参加体能测试,成绩为0
df_girl = df_girl.fillna(0)
def convert(s):
    if isinstance(s, str):
        s = float(s.replace('\'', '.'))
    return s
df_girl['女800米跑'] = df_girl['女800米跑'].apply(convert)
# 保存数据,index = False表示不存储行索引
df_girl.to_excel('./女生体测成绩.xlsx', index = False)
# 查看后10个数据
df_girl.tail(10)

39.png



目录
相关文章
|
10天前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
33 0
|
4天前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
13 2
|
11天前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
24 1
|
2天前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
2天前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南
|
1月前
|
机器学习/深度学习 数据采集 算法
探索Python科学计算的边界:NumPy、Pandas与SciPy在大规模数据分析中的高级应用
【10月更文挑战第5天】随着数据科学和机器学习领域的快速发展,处理大规模数据集的能力变得至关重要。Python凭借其强大的生态系统,尤其是NumPy、Pandas和SciPy等库的支持,在这个领域占据了重要地位。本文将深入探讨这些库如何帮助科学家和工程师高效地进行数据分析,并通过实际案例来展示它们的一些高级应用。
45 0
探索Python科学计算的边界:NumPy、Pandas与SciPy在大规模数据分析中的高级应用
|
1月前
|
数据采集 数据可视化 数据挖掘
Python 数据分析实战:使用 Pandas 进行数据清洗与可视化
【10月更文挑战第3天】Python 数据分析实战:使用 Pandas 进行数据清洗与可视化
77 0
|
2月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
69 0
|
1月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】深入挖掘 Pandas:机器学习数据处理的高级技巧
【Python篇】深入挖掘 Pandas:机器学习数据处理的高级技巧
77 3
|
1月前
|
数据采集 数据挖掘 API
Python数据分析加速器:深度挖掘Pandas与NumPy的高级功能
在Python数据分析的世界里,Pandas和NumPy无疑是两颗璀璨的明星,它们为数据科学家和工程师提供了强大而灵活的工具集,用于处理、分析和探索数据。今天,我们将一起深入探索这两个库的高级功能,看看它们如何成为数据分析的加速器。
38 1
下一篇
无影云桌面