数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—Pandas—pandas高级—数据转换(2)(九)

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

2.3.3 apply元素改变,既支持 Series也支持 DataFrame

2.3.3.1 apply简单介绍

创造数据:

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.randint(0, 101, size = (30, 3)),
                  columns = ['Python', 'Math', 'English'])
display(df)

62.png

apply 对数据进行修改:

def convert(x):
    if x < 60:
        return '不及格'
    elif x < 80:
        return '中等'
    else:
        return '优秀'
df['Python'].apply(convert)

63.png

我们现在来把这两个表格进行合并:

res = df['Python'].apply(convert)
index = list(df.columns).index('Python') + 1
df.insert(loc = index, column = 'Python' + '等级', value = res)
df

64.png

如果我们要生成所有学科的等级,我们可以利用 for 循环:

def convert(x):
    if x < 60:
        return '不及格'
    elif x < 80:
        return '中等'
    else:
        return '优秀'
for col in list(df.columns):
    res = df[col].apply(convert)
    index = list(df.columns).index(col) + 1
    df.insert(loc = index, column = col + '等级', value = res)
df


65.png

2.3.3.2 apply应用

apply 可以对一列数据进行修改:

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 10, size = (10, 3)),
                  index = list('ABCDEFHIJK'),
                  columns = ['Python', 'Tensorflow', 'Keras'])
display(df)
# apply 应用,方法:自定义、简单隐式函数(lambda)
df['Python'] = df['Python'].apply(lambda x : x + 100)
display(df)

66.png

map 可以对一列数据进行修改:

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 10, size = (10, 3)),
                  index = list('ABCDEFHIJK'),
                  columns = ['Python', 'Tensorflow', 'Keras'])
display(df)
df['Python'] = df['Python'].map(lambda x : x - 100)
display(df)

67.png

2.3.3.3 applymap应用

applymap 可以对整个 DataFrame 进行全部的处理

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 10, size = (10, 3)),
                  index = list('ABCDEFHIJK'),
                  columns = ['Python', 'Tensorflow', 'Keras'])
display(df)
def convert(x):
    if x < 5:
        return 100
    else:
        return -100
df.applymap(convert)

68.png



目录
相关文章
|
16天前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
45 0
|
11天前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
26 2
|
17天前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
30 2
|
8天前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
8天前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南
|
2月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
76 0
|
4月前
|
数据挖掘 Python
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
392 0
|
1月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】深入挖掘 Pandas:机器学习数据处理的高级技巧
【Python篇】深入挖掘 Pandas:机器学习数据处理的高级技巧
86 3
|
1月前
|
数据采集 数据挖掘 API
Python数据分析加速器:深度挖掘Pandas与NumPy的高级功能
在Python数据分析的世界里,Pandas和NumPy无疑是两颗璀璨的明星,它们为数据科学家和工程师提供了强大而灵活的工具集,用于处理、分析和探索数据。今天,我们将一起深入探索这两个库的高级功能,看看它们如何成为数据分析的加速器。
40 1
|
2月前
|
机器学习/深度学习 数据采集 监控
Pandas与Matplotlib:Python中的动态数据可视化
Pandas与Matplotlib:Python中的动态数据可视化