Kaggle放大招:简单几步实现海量数据分析及可视化

简介: 近期,Kaggle发布了新的数据分析及可视化工具——Kaggle Kerneler bot,用户只需上传数据集,便可用Python为用户自动获取相关的深度数据分析结果。本文将带领读者体验一下这款便捷而又高效的工具。

【新智元导读】近期,Kaggle发布了新的数据分析及可视化工具——Kaggle Kerneler bot,用户只需上传数据集,便可用Python为用户自动获取相关的深度数据分析结果。本文将带领读者体验一下这款便捷而又高效的工具。

Kaggle Kerneler bot是一个自动生成的kernel,其中包含了演示如何读取数据以及分析工作的starter代码。用户可以进入任意一个已经发布的项目,点击顶部的“Fork Notebook”来编辑自己的副本。接下来,小编将以最热门的两个项目作为例子,带领读者了解该如何使用这款便捷的工具。

好的开始是成功的一半!

要开始这个探索性分析(exploratory analysis),首先需要导入一些库并定义使用matplotlib绘制数据的函数。但要注意的是,并不是所有的数据分析结果图像都能够呈现出来,这很大程度上取决于数据本身(Kaggle Kerneler bot只是一个工具,不可能做到Jeff Dean或者Kaggle比赛选手们那么完美的结果)。

In [1]:

from mpl_toolkits.mplot3d import Axes3D
from sklearn.decomposition import PCA
from sklearn.preprocessing import StandardScaler
import matplotlib.pyplot as plt # plotting
import numpy as np # linear algebra
import os # accessing directory structure
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)

在本例中,一共输入了12个数据集。

In [2]:

print(os.listdir('../input'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/007_nagato_yuki'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/046_alice_margatroid'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/065_sanzenin_nagi'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/080_koizumi_itsuki'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/096_golden_darkness'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/116_pastel_ink'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/140_seto_san'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/144_kotegawa_yui'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/164_shindou_chihiro'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/165_rollo_lamperouge'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/199_kusugawa_sasara'))
print(os.listdir('../input/moeimouto-faces/moeimouto-faces/997_ana_coppola'))

接下里,用户在编辑界面中会看到四个已经编好的代码块,它们定义了绘制数据的函数。而在发布后的页面,这些代码块会被隐藏,如下图所示,只需单击已发布界面中的“code”按钮就可以显示隐藏的代码。

image

准备就绪!读取数据!

首先,让我们先看一下输入中的第一个数据集:

In [7]:

nRowsRead = 100 # specify 'None' if want to read whole file
# color.csv may have more rows in reality, but we are only loading/previewing the first 100 rows
df1 = pd.read_csv('../input/moeimouto-faces/moeimouto-faces/080_koizumi_itsuki/color.csv', delimiter=',', nrows = nRowsRead)
df1.dataframeName = 'color.csv'
nRow, nCol = df1.shape
print(f'There are {nRow} rows and {nCol} columns')

那么数据长什么样子呢?

In [8]:

df1.head(5)

Out [8]:

image


数据可视化:仅需简单几行!

样本的柱状图:

In [9]:

plotHistogram(df1, 10, 5)

image

二维和三维的PCA图:

In [10]:

plotPCA(df1, 2) # 2D PCA
plotPCA(df1, 3) # 3D PCA

image

image

同理,更换数据集文件的路径,也可以得到其它数据对应的结果。

当然,除了上述几种可视化的结果外,根据输入数据以及需求的不同,也可以得到其它数据分析可视化结果,例如:

相关矩阵:

In [11]:

plotCorrelationMatrix(df1, 8)

image

散射和密度图:

In [12]:

plotScatterMatrix(df1, 20, 10)

image

针对数据分析、数据可视化工作,Kaggle kerneler bot应当说是相当的便捷和高效了。那么你是否也想尝试一下呢?

链接地址:
https://www.kaggle.com/kerneler/kernels

原文发布时间为:2018-08-06
本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”。
原文链接:Kaggle放大招:简单几步实现海量数据分析及可视化

相关文章
|
6月前
|
机器学习/深度学习 存储 SQL
15个超级棒的外文免费数据集,学习数据分析不愁没有数据用了!
15个超级棒的外文免费数据集,学习数据分析不愁没有数据用了!
181 0
|
3月前
|
机器学习/深度学习 SQL 数据采集
"解锁机器学习数据预处理新姿势!SQL,你的数据金矿挖掘神器,从清洗到转换,再到特征工程,一网打尽,让数据纯净如金,模型性能飙升!"
【8月更文挑战第31天】在机器学习项目中,数据质量至关重要,而SQL作为数据预处理的强大工具,助力数据科学家高效清洗、转换和分析数据。通过去除重复记录、处理缺失值和异常值,SQL确保数据纯净;利用数据类型转换和字符串操作,SQL重塑数据结构;通过复杂查询生成新特征,SQL提升模型性能。掌握SQL,就如同拥有了开启数据金矿的钥匙,为机器学习项目奠定坚实基础。
37 0
|
6月前
|
数据采集 数据可视化 数据挖掘
‘kaggle视频游戏销售数据的可视化和分析‘项目实现
‘kaggle视频游戏销售数据的可视化和分析‘项目实现
|
6月前
|
数据采集 数据可视化
R语言用相关网络图可视化分析汽车配置和饮酒习惯
R语言用相关网络图可视化分析汽车配置和饮酒习惯
|
机器学习/深度学习 数据可视化 算法
【机器学习3】鸢尾花数据集可视化,让枯燥的数据颜值爆表!
【机器学习3】鸢尾花数据集可视化,让枯燥的数据颜值爆表!
1308 0
|
机器学习/深度学习 数据采集 搜索推荐
10种数据分析的模型思维让你“灵光一闪”
推荐10种数据分析思维,让你在工作中带来“灵光一闪”的感觉 本文来源于阿里开发者公众号
571 0
|
数据可视化 数据挖掘 BI
【氚云】还在用Excel表格做数据分析?两步打造数据大脑
还在用Excel表格做数据分析?两步打造数据大脑
528 0
【氚云】还在用Excel表格做数据分析?两步打造数据大脑
|
存储 数据可视化 atlas
对于组学数据的分析和展示来说,maftools算是一个宝藏“R包”,可用于MAF格式的组学数据的汇总,分析和可视化展示。
对于组学数据的分析和展示来说,maftools算是一个宝藏“R包”,可用于MAF格式的组学数据的汇总,分析和可视化展示。
551 0
|
算法 数据可视化 前端开发
这几个算法可视化网站,太牛了!
很多初学者在学习数据结构与算法的时候,都会觉得很难,很大一部分是因为数据结构与算法本身比较抽象,不好理解。对于这一点,可以通过一些可视化动画来帮助理解。
893 1
|
数据挖掘 定位技术 Python
用对线阶段数据分析和预测《英雄联盟》的游戏结果
用对线阶段数据分析和预测《英雄联盟》的游戏结果
522 0
用对线阶段数据分析和预测《英雄联盟》的游戏结果