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放大招:简单几步实现海量数据分析及可视化

相关文章
|
机器学习/深度学习 SQL 存储
机器学习PAI常见问题之资源不足如何解决
PAI(平台为智能,Platform for Artificial Intelligence)是阿里云提供的一个全面的人工智能开发平台,旨在为开发者提供机器学习、深度学习等人工智能技术的模型训练、优化和部署服务。以下是PAI平台使用中的一些常见问题及其答案汇总,帮助用户解决在使用过程中遇到的问题。
|
机器学习/深度学习 人工智能 自然语言处理
构建智能化编程环境:AI 与代码编辑器的融合
在人工智能的推动下,未来的代码编辑器将转变为智能化编程环境,具备智能代码补全、自动化错误检测与修复、个性化学习支持及自动化代码审查等功能。本文探讨了其核心功能、技术实现(包括机器学习、自然语言处理、深度学习及知识图谱)及应用场景,如辅助新手开发者、提升高级开发者效率和优化团队协作。随着AI技术进步,智能化编程环境将成为软件开发的重要趋势,变革开发者工作方式,提升效率,降低编程门槛,并推动行业创新。
|
12月前
|
人工智能 算法 程序员
如何炼就 AI 原住民的“自我修养”丨通义灵码走进北京大学创新课堂
AI 时代的到来已成为不争的事实,当代大学生及年轻一代正成为这一新时代的原住民。10 月 11 日晚,通义灵码走进北京大学信息科学技术学院第二十六期“知存讲座”,阿里巴巴通义实验室算法专家、通义灵码算法负责人黎槟华先生受邀进行了以“AI 时代原住民的成长之路”为主题的报告。学院党委副书记贾方健主持了本次讲座。
|
机器学习/深度学习 人工智能 自然语言处理
|
机器学习/深度学习 安全 物联网
操作系统的未来趋势与挑战
随着科技的不断进步,操作系统作为计算机系统的核心,其发展趋势和面临的挑战备受关注。本文将从数据导向、科学严谨和逻辑严密的角度,探讨操作系统的未来发展方向和可能遇到的挑战。通过对相关数据的深入解读和分析,揭示操作系统在性能优化、安全性提升、跨平台兼容性等方面的发展趋势;同时,结合科学家的观点和经典理论,阐述操作系统在未来可能面临的技术瓶颈和安全隐患等挑战。最后,文章将提出一些建设性的建议,以期为操作系统的发展提供有益的参考。
|
存储 SQL 分布式计算
【史上最全】Hadoop精选18道面试题(附回答思路)
【史上最全】Hadoop精选18道面试题(附回答思路)
1315 1
【史上最全】Hadoop精选18道面试题(附回答思路)
|
存储 数据可视化 网络安全
【最全面】SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR) (一)
【最全面】SourceTree使用教程详解(连接远程仓库,克隆,拉取,提交,推送,新建/切换/合并分支,冲突解决,提交PR)
2309 0
|
数据库 数据安全/隐私保护
RBAC用户权限管理数据库设计
原文来自:http://minjiechenjava.iteye.com/blog/1759482 最近正在为下一项目版本设计权限管理的。看到了这篇文章,可以参考参考! RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。
7891 1
|
数据建模 数据处理 Python
python 线性回归模型预测国民GDP值
python 线性回归模型预测国民GDP值
1112 0
python 线性回归模型预测国民GDP值
|
人工智能 自然语言处理 开发者
LangChain: 大语言模型的新篇章(1)
LangChain: 大语言模型的新篇章
385 0