Python 教程之数据分析(5)—— 使用 Python 进行数据分析和可视化 | 第 2 套

简介: Python 教程之数据分析(5)—— 使用 Python 进行数据分析和可视化 | 第 2 套

1. 以 CSV 格式存储 DataFrame:

Pandas提供**to.csv('filename', index = "False|True")** 了将 DataFrame 写入 CSV 文件的功能。这*filename是您要创建的 CSV 文件的名称,index告诉 DataFrame 的索引(如果默认)是否应该被覆盖。如果我们设置*index = False,则索引不会被覆盖。默认情况下,索引的值是TRUE**索引被覆盖。

例子 :

import pandas as pd
# 将三个系列分配给 s1、s2、s3
s1 = pd.Series([0, 4, 8])
s2 = pd.Series([1, 5, 9])
s3 = pd.Series([2, 6, 10])
# 获取索引和列值
dframe = pd.DataFrame([s1, s2, s3])
# 分配列名
dframe.columns =['Geeks', 'For', 'Geeks']
# 将数据写入 csv 文件
dframe.to_csv('geeksforgeeks.csv', index = False)
dframe.to_csv('geeksforgeeks1.csv', index = True)

输出 :

image.png

2. 处理缺失数据

数据分析阶段还包括处理数据集中缺失数据的能力,Pandas 也达到了这一预期也就不足为奇了。这就是dropna和/或fillna方法发挥作用的地方。在处理缺失数据时,作为数据分析师,您应该删除包含NaN 值的列(dropna 方法),或者使用整列条目的平均值或众数填充缺失数据(fillna 方法),这个决定是意义重大,取决于数据和影响将在我们的结果中产生。

  • 删除丢失的数据:
    考虑这是由以下代码生成的 DataFrame:

image.png

import pandas as pd
# 创建一个数据框
dframe = pd.DataFrame({'Geeks': [23, 24, 22],
          'For': [10, 12, np.nan],
          'geeks': [0, np.nan, np.nan]},
          columns =['Geeks', 'For', 'geeks'])
# 这将删除所有具有 NAN 值的行
# 如果未定义轴,则它沿行,即轴 = 0
dframe.dropna(inplace = True)
print(dframe)
# 如果轴等于 1
dframe.dropna(axis = 1, inplace = True)
print(dframe)

输出 :

axis=0

image.png

axis=1

image.png

填充缺失值:

现在,使用数据的平均值或模式替换任何NaNfillna值,它可以根据要求替换特定列甚至整个DataFrame中的所有 NaN 值。

import numpy as np
import pandas as pd
# 创建一个数据框
dframe = pd.DataFrame({'Geeks': [23, 24, 22],
            'For': [10, 12, np.nan],
            'geeks': [0, np.nan, np.nan]},
            columns = ['Geeks', 'For', 'geeks'])
# 使用完整Dataframe的fillna
# 价值函数将应用于每一列
dframe.fillna(value = dframe.mean(), inplace = True)
print(dframe)
# 一列的填充值
dframe['For'].fillna(value = dframe['For'].mean(),
                  inplace = True)
print(dframe)

输出 :

image.png

3. Groupby 方法(聚合):

groupby 方法允许我们根据任何行或列将数据分组在一起,因此我们可以进一步应用聚合函数来分析我们的数据。使用 mapper(dict 或 key 函数,将给定函数应用于组,将结果作为系列返回)或一系列列对系列进行分组。


考虑这是由以下代码生成的 DataFrame:

image.png

import pandas as pd
import numpy as np
# 创建数据框
dframe = pd.DataFrame({'Geeks': [23, 24, 22, 22, 23, 24],
            'For': [10, 12, 13, 14, 15, 16],
            'geeks': [122, 142, 112, 122, 114, 112]},
            columns = ['Geeks', 'For', 'geeks'])
# 应用 groupby 和聚合函数 max 来查找列的最大值
print(dframe.groupby(['Geeks']).max())

输出 :

image.png

感谢大家的阅读,有什么问题的话可以在评论中告诉我。希望大家能够给我来个点赞+收藏+评论 ,你的支持是海海更新的动力!后面我会持续分享前端 & 后端相关的专业知识。


目录
相关文章
|
17天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
18天前
|
数据可视化 数据挖掘
R中单细胞RNA-seq数据分析教程 (3)
R中单细胞RNA-seq数据分析教程 (3)
27 3
R中单细胞RNA-seq数据分析教程 (3)
|
20天前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
60 4
数据分析的 10 个最佳 Python 库
|
4天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
30 8
|
4天前
Seaborn 教程-主题(Theme)
Seaborn 教程-主题(Theme)
22 7
|
4天前
|
Python
Seaborn 教程-模板(Context)
Seaborn 教程-模板(Context)
22 4
|
4天前
|
数据可视化 Python
Seaborn 教程
Seaborn 教程
20 5
|
11天前
|
数据可视化 编译器 Python
Manim:数学可视化的强大工具 | python小知识
Manim(Manim Community Edition)是由3Blue1Brown的Grant Sanderson开发的数学动画引擎,专为数学和科学可视化设计。它结合了Python的灵活性与LaTeX的精确性,支持多领域的内容展示,能生成清晰、精确的数学动画,广泛应用于教育视频制作。安装简单,入门容易,适合教育工作者和编程爱好者使用。
65 7
|
24天前
|
存储 数据可视化 数据挖掘
使用Python进行数据分析和可视化
本文将引导你理解如何使用Python进行数据分析和可视化。我们将从基础的数据结构开始,逐步深入到数据处理和分析的方法,最后通过实际的代码示例来展示如何创建直观的数据可视化。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索数据的世界,发现隐藏在数字背后的故事!
|
21天前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势