热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据分析与数据挖掘:NumPy、Pandas和Matplotlib的使用指南

本文详细介绍了如何使用NumPy、Pandas和Matplotlib进行数据分析和数据可视化。通过具体的代码示例,帮助读者更好地理解和应用这些强大的Python库。

1 import numpy as np
2 import pandas as pd
3
4 """
5 NumPy -- 科学计算库
6 核心 -- ndarray
7 本质:存储单一数据类型的内存连续的N维数组
8 C 和 F 风格存储
9
10 Matplotlib -- 数据可视化的库
11 能够绘制2D 和 3D 图形
12
13 Pandas -- 进行数据处理的库
14 封装了部分NumPy 和 Matplotlib 功能
15 结构核心:
16 常用两种结构:
17 Series -- 存储一维结构
18 与DataFrame相比,只含有行索引,没有列索引
19 DataFrame(重要)-- 存储二维结构
20 数据相比ndarray,多了行索引和列索引
21 """
22
23 # 将columns 与 values 合并为同一个数据 -- 合并结果是什么类型? -- 数组
24 res = np.load("./国民经济核算季度数据.npz")
25 columns = res["columns"]
26 values = res["values"]
27
28 print("columns:", columns)
29 print("values:", values)
30 # print("*" * 100)
31 #
32 # NumPy合并数据
33 res_array = np.concatenate((columns.reshape(1, -1), values), axis=0)
34 # print("res_array:", res_array)
35
36
37 # 将数组转化为DataFrame
38 # 将上面的columns 与 values 转化为pandas中的DataFrame结构
39 # data -- 真实数据
40 # index -- 行索引的名称
41 # columns -- 列索引的名称
42 index = ["index_" + str(i) for i in range(values.shape[0])]
43 print(index)
44
45 res_df = pd.DataFrame(data=values, columns=columns, index=index)
46 print("res_df:", res_df)
47
48 # 创建一个自定义的DataFrame
49 df = pd.DataFrame(
50 data={
51 "name": ["zs", "ls", "ww"],
52 "score": [97, 89, 92.5],
53 "age": [21, 22, 23]
54 },
55 index=["stu_1", "stu_2", "stu_3"]
56 )
57 print("df:", df)
58
59 print("df的维度:", df.ndim)
60 print("df的类型:", type(df))
61
62 # print("*" * 100)
63
64 # 将DataFrame转化为Series
65 # Series 是什么?
66 se = df["name"]
67
68 print("se:", se)
69
70 print("se的类型:", type(se))
71
72 # 创建一个自定义的Series
73 # data -- Series的真实值
74 se = pd.Series(
75 data=["zs", "ls", "ww"],
76 index=["stu_1", "stu_2", "stu_3"]
77 )
78 print("se:", se)
79 print("se的维度:", se.ndim)
80 print("se的类型:", type(se))
81
82
83 # NumPy 示例
84 arr = np.array([1, 2, 3, 4]) # 将简单列表转化为数组
85 arr = np.array([[1, 2, 3, 4], [2, 3, 4, 5]]) # 将列表嵌套转化为数组
86 arr = np.array([[[1, 2, 3, 4], [2, 3, 4, 5]], [[1, 2, 3, 4], [2, 3, 4, 5]]])
87
88 print('arr:', arr)
89 print('arr的类型:', type(arr)) #
90 print('arr的维度:', arr.ndim)
91 print('arr的形状:', arr.shape)
92 print('arr的大小:', arr.size)
93 print('arr元素的数据类型:', arr.dtype)
94 print('arr每个元素的大小:', arr.itemsize)


推荐阅读
  • 利用决策树预测NBA比赛胜负的Python数据挖掘实践
    本文通过使用2013-14赛季NBA赛程与结果数据集以及2013年NBA排名数据,结合《Python数据挖掘入门与实践》一书中的方法,展示如何应用决策树算法进行比赛胜负预测。我们将详细讲解数据预处理、特征工程及模型评估等关键步骤。 ... [详细]
  • 本文介绍如何使用Objective-C结合dispatch库进行并发编程,以提高素数计数任务的效率。通过对比纯C代码与引入并发机制后的代码,展示dispatch库的强大功能。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • Java 类成员初始化顺序与数组创建
    本文探讨了Java中类成员的初始化顺序、静态引入、可变参数以及finalize方法的应用。通过具体的代码示例,详细解释了这些概念及其在实际编程中的使用。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 数据管理权威指南:《DAMA-DMBOK2 数据管理知识体系》
    本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 从 .NET 转 Java 的自学之路:IO 流基础篇
    本文详细介绍了 Java 中的 IO 流,包括字节流和字符流的基本概念及其操作方式。探讨了如何处理不同类型的文件数据,并结合编码机制确保字符数据的正确读写。同时,文中还涵盖了装饰设计模式的应用,以及多种常见的 IO 操作实例。 ... [详细]
  • 本文提供了使用Java实现Bellman-Ford算法解决POJ 3259问题的代码示例,详细解释了如何通过该算法检测负权环来判断时间旅行的可能性。 ... [详细]
  • 本文详细介绍如何在VSCode中配置自定义代码片段,使其具备与IDEA相似的代码生成快捷键功能。通过具体的Java和HTML代码片段示例,展示配置步骤及效果。 ... [详细]
  • 本文介绍如何使用 Python 的 Pandas 库中 Series 对象的 round() 方法,对数值进行四舍五入处理。该方法在数据预处理和分析中非常有用。 ... [详细]
  • Python库在GIS与三维可视化中的应用
    Python库极大地扩展了GIS的能力,使其能够执行复杂的数据科学任务。本文探讨了几个关键的Python库,这些库不仅增强了GIS的核心功能,还推动了地理信息系统向更高层次的应用发展。 ... [详细]
  • 本文将介绍如何使用 Go 语言编写和运行一个简单的“Hello, World!”程序。内容涵盖开发环境配置、代码结构解析及执行步骤。 ... [详细]
author-avatar
酸奶82
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有