kaggle是很多数据分析和机器学习初学者非常喜爱的数据科学竞赛平台。

这个平台上有很多接近现实业务场景的数据集,非常适合练手。

今天向大家推荐一个下载kaggle数据集的小工具——kaggleAPI

配置好之后,可以写个脚本,以后下载数据就方便多了。

安装

pip install kaggle

安装完毕之后执行

kaggle compeitions list

然后就会报错,提示没有kaggle.json文件,不用理他。

这一步主要是让其运行后生成配置文件夹,一般在C盘-用户-用户名下的.kaggle

配置

登录kaggle官网



右上角头像处点击,选择Account



进去之后滚动到最下面API处,选择Create New API Token

然后就会自动下载一个kaggle.json文件,另存到第一步那个.kaggle文件夹

下载数据集

再执行以下

kaggle compeitions list

可以看到近期的一些竞赛,重点关注以下奖金

除了list,kaggle competitions 还有一些其他用法,不展开讲了。

kaggle competitions {list, files, download, submit, submissions, leaderboard}

大家最关心的数据集下载

kaggle datasets{list,files,download,create,version,init,metadata,status}

比较常用的是:list(可用数据集列表)、files(数据文件)、download(下载)

kaggle datasets list

用法

usage: kaggle datasets list [-h] [--sort-by SORT_BY]
[--size SIZE] [--file-type FILE_TYPE] [--license LICENSE_NAME]
[--tags TaG_IDS] [-s SEARCH] [-m] [--user USER] [-p PAGE] [-v]

这个里面还有2个常用的参数: -s 搜索,后面可以加关键词;-p 展示多少行,默认是20

kaggle datasets download

用法

usage: kaggle datasets download
[-h] [-f FILE_NAME] [-p PATH] [-w] [--unzip]
[-o] [-q][dataset]

更真实的用法

如果单纯在cmd执行个下载指令就大材小用了,我们还可以用kaggleAPI写shell脚本完成更复杂的用法,比如:

#!/bin/sh
DATASET="noxmoon/chinese-official-daily-news-since-2016"
ARCHIVE_FILE="chinese-official-daily-news-since-2016.zip"
DATA_FILE="chinese_news.csv"
DATA_DIR="data"
COL_NAME="headline"
LINES=3000
OUTPUT_FILE="headlines.txt" if [ -d ${DATA_DIR} ]; then
echo ${DATA_DIR}' exists, please remove it before running the script'
exit 1
fi echo "Creating dir"
mkdir -p ${DATA_DIR}
cd ${DATA_DIR}
kaggle datasets download -d ${DATASET}
unzip ${ARCHIVE_FILE} echo "Deleting original dataset archive"
rm -f ${ARCHIVE_FILE} echo "Extracting, cutting, shuffling data"
awk -v col=$COL_NAME -F "\"*,\"*" '{print $COL_NAME}' $DATA_FILE | shuf -n 3000 > ${OUTPUT_FILE}

下载-解压一气呵成!

参考

https://github.com/Kaggle/kaggle-api

下载kaggle数据集的小妙招的更多相关文章

  1. 下载kaggle数据集,验证手机号

    https://blog.csdn.net/Tomxiaodai/article/details/80167765 kaggle上下载一下数据集必须手机验证,结果验证时一直提示错误输入的格式错误,试了 ...

  2. 【CSS】小妙招,各种问题总结方法处理

    1.实现div文字溢出自动省略号截取   overflow:hidden;  /*超过部分不显示*/   text-overflow:ellipsis;  /*超过部分用点点表示*/   white- ...

  3. Angular 开发小妙招1:提交表单数据验证不通过,更改输入组件的样式

    开发表单时,客户端数据完整性校验是必不可少的,在jquery 时代出现了无数的数据验证插件也很好用,开发Angular 应用时,angular 内置了一些常用的数据验证指令.今天要讲的不是这些指令如何 ...

  4. 【转】一个小妙招能让你在服装上省下好多rmb

    朋友们,你们仔细算过自己每年在淘宝上买衣服消费了多少rmb吗?100?1000?10000?甚至更多? 朋友们,你知道淘宝上大多数店铺的衣服是哪里来的吗? 朋友们,你知道怎么在这上面能节省更多的mon ...

  5. 14个Linux系统安全小妙招,总有一招用的上!

    对于互联网IT从业人员来说,越来越多的工作会逐渐转移到Linux系统之上,这一点,无论是开发.运维.测试都应该是深有体会.曾有技术调查网站W3Techs于2018年11月就发布一个调查报告,报告显示L ...

  6. 这里有40条提升编程技能小妙招!还有TIOBE 7月份的编程语言排行榜

    如何提高编程技能?恐怕很多开发者思考过这个问题.最近,拥有将近 15 年开发经验的软件工程师 Kesk -*- 写了一篇博客,列举了 40 条对其职业生涯有所帮助的事项.   或许,通过以下 40 个 ...

  7. 关于MySQL索引知识与小妙招 — get get get

    一.索引基本知识 1.1 索引的优点 大大减少了服务器需要扫描的数据量,加快数据库的检索速度 帮助服务器避免排序和临时表 将随机io变成顺序io 1.2 索引的用处 速查找匹配WHERE子句的行 从c ...

  8. 一种比css_scoped和css_module更优雅的避免css命名冲突小妙招

    css_scoped 与 css_module 我们知道,简单的class名称容易造成css命名重复,比如你定义一个class: <style> .main { float: left; ...

  9. Angular+ionic2 web端 启动程序出现短暂 白屏或黑屏 的处理小妙招

    在ionic2项目启动是会出现短暂的白屏或者黑屏,虽然很短,但是用户体验不太好.上网查了相关的资料,都是针对打包APP的解决办法,针对浏览器端使用的项目没有效果,所以自己写了样式,巧妙的避开这个问题, ...

随机推荐

  1. NGK.IO的智能合约是炒作还是未来商业的主流?

    随着NGK主网的上线,NGK市场也备受关注.目前,NGK代币价格已经由初始价格0.0215美元涨到现在的0.86美元,代币价格上涨40倍!数字货币市场也已经将重点目光放到了NGK代币上,相信在不久的将 ...

  2. TCP编程详解

    目录 数据包格式 建立连接(三次握手) 数据传输 断开连接(四次挥手) 基础 客户端流程 编码 TCP服务端流程 TCP服务端编码 参考文献 TCP把连接作为最基本的对象,每一条TCP连接都有两个端点 ...

  3. 你真的懂 MP4 格式吗?

    MP4 文件格式又被称为 MPEG-4 Part 14,出自 MPEG-4 标准第 14 部分 .它是一种多媒体格式容器,广泛用于包装视频和音频数据流.海报.字幕和元数据等.(顺便一提,目前流行的视频 ...

  4. python进阶(3)序列化与反序列化

    序列化与反序列化 按照某种规则,把内存中的数据保存到文件中,文件是一个字节序列,所以必须要把内存数据转换成为字节序列,输出到文件,这就是序列化:反之,从文件的字节恢复到内存,就是反序列化: pytho ...

  5. jQuery编写组件的几种方式

    原文链接:https://w.cnblogs.com/xiao-xi/p/8572471.html 三种方式: 1.通过$.extend()来扩展jQuery 2.通过$.fn 向jQuery添加新的 ...

  6. vue子组件的样式没有加scoped属性会影响父组件的样式

    scoped是一个vue的指令,用来控制组件的样式生效区域,加上scoped,样式只在当前组件内生效,不加scoped,这个节点下的样式会全局生效. 需要注意的是:一个组件的样式肯定是用来美化自己组件 ...

  7. Spirng 循环依赖报错:Requested bean is currently in creation: Is there an unresolvable circular reference?

    1:前言 最近在项目中遇到了一次循环依赖报错的问题,虽然解决的很快,但是有些不明白的地方,特此记录. 在此我把 bean 的结构和 注入方式单独拎出来进行演示 1.1:报错提示 1.2:错误日志 Ex ...

  8. 【Java进阶面试系列之一】哥们,你们的系统架构中为什么要引入消息中间件?

    转: [Java进阶面试系列之一]哥们,你们的系统架构中为什么要引入消息中间件? **这篇文章开始,我们把消息中间件这块高频的面试题给大家说一下,也会涵盖一些MQ中间件常见的技术问题. 这里大家可以关 ...

  9. Node更丝滑的打开方式

    Node更丝滑的打开方式 1. 使用背景 最近前端的一个项目,使用gulp作为工程化.在运行过程中出现如下错误 gulp[3192]: src\node_contextify.cc:628: Asse ...

  10. 清华大学-成绩排序(排序+解决MLE问题)

    成绩排序 成绩排序 这里需要注意的就是超内存的问题. 解决方法就是通过指针的方式,每次动态开n大小的内存,而不是一开始就分配. #include<bits/stdc++.h> using ...