Python数据可视化1.2 数据转换

简介:
+关注继续查看

1.2 数据转换


现在,我们了解了数据的定义,但问题是:为什么要收集数据?数据对于描述物质或社会现象以及进一步回答这些问题非常有用。出于这个原因,确保数据的无误、精确和完整是很重要的;否则,错误、不精确和不完整的数据将导致响应结果的不精确或不完整。

数据有不同种类,其中包括过去表现数据、实验数据和基准数据。过去表现数据和实验数据当然很容易理解。另一方面,基准数据是用一个测度标准来比较两种不同项目或产品的特征。数据被转换为信息,得到进一步处理,然后用来解答问题。因此,很明显下一步就是转换的实现。

1.2.1 数据转换为信息

根据数据的内容和重要性,数据收集和储存有一些不同的方式。例如,如果数据是关于篮球季后赛的,那么这些数据将储存为文本和视频格式。另一个例子是一个国家所有城市的温度记录,这些数据通过不同形式收集得到。从数据转换为信息包含数据的收集、处理和组织,如下图所示:

 

收集来的数据需要处理和组织过程,这些数据后续可能没有结构、没有模型或没有模式。然而,该处理过程至少给我们一种从数据中发现问题答案的组织方式。这种处理可以是一种基于篮球员总得分的简单分类,或者根据城市和州名的分类。

从数据到信息的转换也可以不仅仅是分类,比如统计建模或计算算法。将数据转换为信息确实很重要,这样数据可以被查询、访问和操作。海量数据的转换可能包括这样几种处理方法:过滤、聚集、应用相关性、归一化和分类。

1. 数据收集

数据收集是一个耗时的过程。因此,人们正在寻找更好的自动数据采集方法。然而,人工数据收集仍然很常见。如今,数据的自动收集过程用到输入设备,比如传感器。例如,通过传感器检测水下珊瑚礁;农业上用传感器检测土壤性质、控制灌溉和施肥方法是另一个应用领域。

另一种自动收集数据的方法是通过扫描文档和日志文件,这也是一种服务器端数据收集的形式。人工处理包括基于网络且储存于数据库的数据收集方法,这些数据可以转换为信息。现在,基于网络的协作环境正受益于交流改善和数据分享。

传统的可视化和可视化分析工具专门为单个用户、单机可视化应用而设计。将这些工具的功能拓展到支持协作的层面需要一个漫长的过程,才能扩大真实世界中可视化的适用范围和应用领域。

2. 数据预处理

如今,基于数据量、数据来源的多重异质性和数据类型的不同,数据很容易受到噪音和不一致的影响。现有一些数据预处理技术,比如数据清洗、数据集成、数据压缩和数据转换。数据清洗用于数据中的噪音清理和矛盾修正。数据集成将多个数据源的数据合并起来,通常被称为数据仓库。数据压缩可以通过诸如合并、聚集和消除冗余特征等方法减少数据量。数据转换将数据缩放到一个较小的区间,从而提高处理和可视化的精确性和效率。数据的转换周期如下图所示:

 

异常值检测是非常规数据的识别,这些数据可能不会落入收集数据的预期行为或模式。异常值也称为离群点或噪音;比如信号数据,一个非常规的特别信号被视为噪音。交易数据中的一个离群点是欺诈交易。准确的数据收集对于保持数据完整性必不可少。然而,从另一角度考虑,异常值也非常重要,比如寻找诈骗保险理赔。

3. 数据处理

数据处理是转换过程中的重要一步。当务之急是关注数据质量。依存模型和聚类有助于准备分析数据和更好地理解处理步骤。虽然也有其他处理技术,但是我们在这不做过多赘述,仅以两种最受欢迎的处理方法为例。

依存模型是建模数据以确定表现方式性质和结构的基本原则。该过程寻找数据元素间的关系;比如,百货公司可能收集顾客购买习惯的数据。该过程有助于百货公司减掉频繁购买的信息。

聚类是在数据中发现群组,从某种方式上看,“相似性模式”没有用数据中已知的结构。

4. 组织数据

数据库管理系统允许用户以结构化的形式存储数据。然而,数据库太大而不能存入内存。有以下两种结构化数据的方法:

以结构化的形式将大量数据储存到磁盘中,比如,表、树或图表

为了快速访问,以结构化的形式将数据储存到内存中

数据结构由将数据结构化为可被储存和访问的一系列不同格式构成。常用的数据结构类型有数组、文件、表、数、列表、映射等。任何数据结构都是为特定目的而设计的,通过组织数据来进行数据储存、访问和操作。一种数据结构可能被选择或设计来储存数据,以实现用不同算法更快访问的目的。

经过高效收集、处理和组织所存储的数据,使数据更容易被理解,这也有助于更好地理解数据中蕴含的信息。

5. 获取数据集

针对接触不到组织数据的读者,下面列举出一些丰富的数据集资源:

http://grouplens.org(来自明尼苏达大学)

http://ichart.finance.yahoo.com/table.csv?s=YHOO&c=1962

http://datawrangling.com/some-datasets-available-on-the-web

http://weather-warehouse.com(天气数据)

http://www.bjs.gov/developer/ncvs/(Justice统计局)

http://census.ire.org/data/bulkdata.html(人口普查数据)

http://www.pro-football-reference.com(足球参考)

http://www.basketball-reference.com(篮球参考)

http://www.baseball-reference.com(棒球参考)

http://archive.ics.uci.edu/ml/datasets.html(机器学习)

http://www.pewresearch.org/data/download-datasets/

http://archive.ics.uci.edu/ml/datasets/Heart+Disease(心脏病)

1.2.2 信息转换为知识

信息是可量化的、可测度的、有形式的,可以被访问、生成、存储、分发、搜索、压缩和复制。信息可以通过数量或信息量进行量化。

通过应用离散算法,信息可转换为知识,知识要比信息更可量化。在某些领域,知识持续经历了一个不断发展的周期。当数据发生实时变化时,这种演变过程随之发生。

知识就像是帮助你做面包的面粉和酵母成分的烹饪配方。另一个看待知识的方法是数据和信息的结合,并加入经验和专家意见,以帮助决策。知识不仅仅是过滤或算法的结果。

转换中包括哪些步骤?这种变化如何发生?当然,它本身是不能发生的。尽管信息这个词是基于定义的不同阐释,但是,我们将在计算的范围内进一步探索。

有一个简单的类比用以说明信息和知识之间的区别:一门特定课程的课程材料为你提供有关概念的重要信息,随后老师引导学生通过讨论来理解概念。这有助于学生获得课程知识。类似地,信息转换为知识也需要完成一些工作。下图展示了信息转换为知识的过程:

 

正如上图所示,信息通过一些离散算法进行合并和运行后,就能转换为知识。需要通过整合信息得到更多的知识。通过这种转换获得的知识有助于回答有关数据或信息的问题,比如,公司在哪个季度销售收益最高?广告拉动销售的贡献有多大?今年发布了多少新产品?

1.2.3 知识转换为观点

在传统的系统中,信息经处理、分析并形成报告。自因特网诞生以来,我们可以获取经过处理的信息,而且社交媒体融合成为一种处理实际问题的新方式。

一些组织机构已开始分析外部数据来获得观点。比如,通过Twitter上消费者的推文完成对用户情绪的测度,以此来追踪他们对产品品牌的意见。在某些情况下,较高比例的用户会在社交媒体上发布新产品的好评,比如一台iPhone或平板电脑。分析工具能够提供该情绪的数据化证据,这就是数据可视化扮演的重要角色。

下面是知识转化为观点的另一个例子。2009年Netflix公司宣布了一场比赛,该比赛基于已有的电影分级,评选用来预测用户对电影评级的最佳协同过滤算法。比赛的获胜者用语用学理论,在预测用户分级方面提高10.05%的正确率,增加了Netflix公司的商业价值。

 

知识转换为观点是通过如上图所示的协作和分析来实现的。观点意味着看到解决方案,并发现需要做的事情。得到数据和信息很容易,一些组织机构已经知道获取方法,但是得到观点却很难。观点的得出需要新的创造性思维和连点成线的能力。除了应用创造性思维,数据分析和数据可视化在观点得出的过程中也发挥着很大作用。数据可视化被视为艺术和科学的结合。

相关文章
|
3天前
|
数据可视化 前端开发 数据挖掘
Python 教程之数据分析(3)—— Python中不同图表的数据可视化
Python 教程之数据分析(3)—— Python中不同图表的数据可视化
11 0
|
3天前
|
数据可视化 前端开发 数据挖掘
Python 教程之数据分析(1)—— 使用 Bokeh 进行数据可视化
Python 教程之数据分析(1)—— 使用 Bokeh 进行数据可视化
9 0
|
3天前
|
机器学习/深度学习 数据可视化 数据挖掘
一个基于Matplotlib的Python数据可视化库:Seaborn
一个基于Matplotlib的Python数据可视化库:Seaborn
29 1
|
3天前
|
数据采集 数据可视化 数据挖掘
Python数据分析中如何更好地进行数据可视化?
Python数据分析中如何更好地进行数据可视化?
16 0
|
19天前
|
数据可视化 数据挖掘 API
Seaborn: 一个强大的Python数据可视化库
在数据科学领域,数据可视化是一项至关重要的任务。通过可视化数据,我们可以更好地理解和解释数据,发现隐藏在数据背后的模式和趋势。Python作为一种广泛使用的编程语言,提供了许多数据可视化库。其中,Seaborn是一个备受推崇的Python数据可视化库,能够以简洁而美观的方式创建丰富多样的统计图形。本文将介绍Seaborn的特点、用法和示例,以帮助读者更好地了解和使用这个强大的数据可视化工具。
|
19天前
|
数据可视化 数据挖掘 索引
Matplotlib:Python数据可视化的全面指南
数据可视化是数据分析的一个重要方面,可以帮助我们有效地传达数据中的洞察和模式。Python提供了几个用于数据可视化的库,其中最突出和广泛使用的是Matplotlib。在本文中,我们将探索Matplotlib的基本概念和功能,并学习如何创建各种类型的图表和图形。
|
19天前
|
数据可视化 数据挖掘 Python
数据可视化利器:Python中的Matplotlib和Seaborn库详解
数据可视化是数据分析和探索性数据分析的关键步骤之一。在Python中,Matplotlib和Seaborn是两个强大的数据可视化库,它们提供了丰富的功能和灵活的接口,使得用户能够创建出具有吸引力和信息量的图表。本文将深入探讨Matplotlib和Seaborn库,介绍它们的基本用法以及如何创建各种类型的图表。
|
25天前
|
数据可视化 测试技术 Python
软件测试|Python数据可视化神器——pyecharts教程(七)
软件测试|Python数据可视化神器——pyecharts教程(七)
18 0
|
1月前
|
数据可视化 Python
python数据可视化-日期折线图画法
python数据可视化-日期折线图画法
35 0
|
1月前
|
数据可视化 算法 定位技术
Python数据可视化matplotlib和pyecharts参数详解
Python数据可视化matplotlib和pyecharts参数详解
42 0
热门文章
最新文章
推荐文章
更多