数据科学第一项目的数据采集从哪开始:找数据、拿数据、验数据完整指南
数据科学第一项目的数据采集从哪开始找数据、拿数据、验数据完整指南【免费下载链接】Data-Science-For-Beginners10 Weeks, 20 Lessons, Data Science for All!项目地址: https://gitcode.com/GitHub_Trending/da/Data-Science-For-Beginners刚开始学数据科学时你大概率卡在同一道题上数据在哪Data Science for Beginners是一套10 周 20 课的开源课程从定义数据科学讲到云上机器学习课程里自带了鸟类、出租车、糖尿病、疫情等一套可直接练手的真实数据集。下面这篇就围绕这条主线讲初学者做第一个项目时数据采集应该去哪儿找、怎么拿到手、拿到后怎么判断能不能用。先弄清数据从哪来三个数据源渠道很多人以为数据采集等于写爬虫其实对你第一个项目来说最常见的数据来自三个渠道项目自带的文件、公开的开放数据集、以及数据库和第三方服务。搞清楚这个分类你就知道该先试哪条路。课程自带的练习数据翻仓库根目录就能发现一个data/文件夹里面全是课程配套数据birds.csv鸟类翼展与体重、taxi.csv出租车叫车、diabetes.tsv糖尿病研究、mushrooms.csv蘑菇特征还有data/COVID/下三份按国家统计的疫情时间序列。这类数据的优点是格式统一、体积小、和课程内容一一对应。你写练习时不用为数据从哪来分心这是新手起步最省心的渠道。公开开放数据集课程第 07 课的练习直接用了约翰霍普金斯大学系统科学与工程学院发布的疫情数据第 06 课则用到了 Twitter 账号的历史推文。政府和研究机构持续发布的开放数据是另一个取之不尽的渠道——特点是不需要写采集代码直接下载即可但要留意每个数据集的许可证和更新频率。数据库与第三方服务课程第 05 课附带了一个 SQLite 数据库文件airports.db机场信息第 06 课则准备了PersonsData.json、TwitterData.json这类半结构化文件。如果你的数据来源是别人的线上服务或内部库那就属于这一类数据不是躺在你硬盘里你得主动去要。怎么拿到手初学者最常用的 4 种方式找到数据只是第一步。下面四种方式覆盖了课程里出现的全部数据形态每种都按什么场景用 / 怎么操作 / 常见坑来说。一行 Pandas 读入文件场景数据是 CSV、TSV 这类文本表格绝大多数课程练习都走这条路。import pandas as pd df pd.read_csv(data/birds.csv) # CSV 文件 diab pd.read_table(data/diabetes.tsv) # TSV 要换 read_table print(df.shape, df.isnull().sum())坑分隔符看错。.tsv是制表符分隔用read_csv默认逗号去读所有字段会被挤进一列里。看到只有一列但内容用 Tab 隔开基本就是它了。仓库里 examples/02_loading_data.py 就是照着上面的步骤写的完整示例注释逐行解释。用 SQL 直查数据库场景数据存在关系型数据库里比如课程附带的airports.db。import sqlite3 conn sqlite3.connect(2-Working-With-Data/05-relational-databases/airports.db) df pd.read_sql_query(SELECT * FROM AIRPORTS LIMIT 5, conn)坑不知道有哪些表就直接SELECT *报错。先用conn.execute(SELECT name FROM sqlite_master WHERE typetable)问一次库里有什么表再决定查哪张。详细原理可以看 关系型数据库课程。打开 JSON 文件场景数据是文档型或 API 返回的 JSON比如TwitterData.json里的每条推文。import json with open(2-Working-With-Data/06-non-relational/PersonsData.json) as f: persons json.load(f) print(persons[0])坑JSON 里的字段经常每人一套——某条记录有age另一条可能没有。课程第 06 课讲的 Cosmos DB 文档库就是为这种结构设计的你可以把 JSON 文件整个传进模拟器的容器里体验从第三方服务现取场景数据必须实时或数据方只提供接口。调 API 取数像去餐厅点现成的菜——你报菜名发请求厨房按固定格式出餐返回 JSON而爬网页则是自己去市场买菜、回来洗切下厨费工但菜色自由。import requests data requests.get(你的接口地址).json()坑返回结构和文档不一致是家常便饭收到数据先print(data)看一眼顶层结构别急着写解析逻辑。课程里 Face API、Text Analytics 的调用都走这个模式见 Python 数据处理课程。数据到手后5 分钟自查清单数据科学里有个朴素规律你后面所有分析的上限取决于手里数据的质量。课程第 08 课专门用一节课讲清洗第 14 课则把验证数据够不够好列为项目生命周期的第一道闸。自查不用复杂四件事做完就有底检查项一行代码看出什么问题规模df.shape行数和预期差太多说明下载或读取就错了缺失df.isnull().sum()哪一列在漏数据类型df.info()该是数字的列变成了文本常因脏字符分布df.describe()最大值、最小值有没有明显违背常识再补两条经验重复行df.duplicated().sum()非零时先别急着删课程第 08 课提醒有些重复其实是拼接数据时留下的有效信息。常识校验鸟类体重是几十克还是几十公斤describe()一眼就能揪出量级错误。动手练一练给 birds.csv 做次体检光说不练不行。打开仓库里data/birds.csv加载示例脚本 用的就是它把上面的自查清单完整走一遍data pd.read_csv(data/birds.csv) print(data.shape) # 多少行、多少列 print(data.isnull().sum()) # 缺失统计 print(data.describe()) # 数值分布 print(data[Conservation].value_counts()) # 分类列的取值跑完你会发现这套数据干净得少见——这正适合新手建立好数据长什么样的基准。想继续往下走仓库里有现成的进阶路线先按 examples/README.md 从01_hello_world_data_science.py一路做到05_real_world_example.py每步都有逐行注释数据脏了怎么修数据准备课程 notebook 用真实案例演示缺失值、重复和格式问题采集到分析的全流程COVID-19 传播分析 notebook 展示从约翰霍普金斯数据源到成图的完整链路本地跑不起来先翻 安装指南或者把仓库克隆下来再试git clone https://gitcode.com/GitHub_Trending/da/Data-Science-For-Beginners。数据采集对初学者最友好的地方在于起步时你几乎只需要会读文件。把找现成的 → 读进来 → 查一遍这个循环跑顺了API、数据库、爬虫这些高级渠道等你需要时再上也不迟。【免费下载链接】Data-Science-For-Beginners10 Weeks, 20 Lessons, Data Science for All!项目地址: https://gitcode.com/GitHub_Trending/da/Data-Science-For-Beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
上一篇/下一篇内容由系统自动关联
返回资讯列表 →