chore(i18n): sync translations with latest source changes (chunk 1/1, 69 changes)

update-translations
localizeflow[bot] 6 hours ago
parent 944aa5846b
commit 6df6c5c3a4

@ -11,12 +11,24 @@
"source_file": "1-Introduction/01-defining-data-science/assignment.md",
"language_code": "zh-HK"
},
"1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec",
"translation_date": "2026-02-28T09:00:47+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "zh-HK"
},
"1-Introduction/01-defining-data-science/solution/assignment.md": {
"original_hash": "a8f79b9c0484c35b4f26e8aec7fc4d56",
"translation_date": "2025-08-25T16:57:23+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/assignment.md",
"language_code": "zh-HK"
},
"1-Introduction/01-defining-data-science/solution/notebook.ipynb": {
"original_hash": "090bbfbfcb0c40d3d6e3236f836164ea",
"translation_date": "2026-02-28T09:01:25+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/notebook.ipynb",
"language_code": "zh-HK"
},
"1-Introduction/02-ethics/README.md": {
"original_hash": "58860ce9a4b8a564003d2752f7c72851",
"translation_date": "2025-10-03T16:08:44+00:00",
@ -95,6 +107,12 @@
"source_file": "2-Working-With-Data/07-python/assignment.md",
"language_code": "zh-HK"
},
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38",
"translation_date": "2026-02-28T09:02:48+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "zh-HK"
},
"2-Working-With-Data/08-data-preparation/README.md": {
"original_hash": "1b560955ff39a2bcf2a049fce474a951",
"translation_date": "2025-09-05T12:04:24+00:00",
@ -360,8 +378,8 @@
"language_code": "zh-HK"
},
"README.md": {
"original_hash": "9204a2806964384a56f5cb0f22bbe953",
"translation_date": "2026-02-06T07:39:06+00:00",
"original_hash": "f671e295a294a2559fc59d1524e001b4",
"translation_date": "2026-02-28T09:07:49+00:00",
"source_file": "README.md",
"language_code": "zh-HK"
},

@ -6,7 +6,7 @@
---
[![數據科學的定義影片](../../../../translated_images/zh-HK/video-def-ds.6623ee2392ef1abf6d7faf3fad10a4163642811749da75f44e35a5bb121de15c.png)](https://youtu.be/beZ7Mb_oz9I)
[![數據科學的定義影片](../../../../translated_images/zh-HK/video-def-ds.6623ee2392ef1abf.webp)](https://youtu.be/beZ7Mb_oz9I)
## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/0)
@ -144,7 +144,7 @@
在這次挑戰中,我們將透過分析文本來尋找與數據科學領域相關的概念。我們會選取一篇關於數據科學的維基百科文章,下載並處理文本,然後建立一個像這樣的文字雲:
![數據科學文字雲](../../../../translated_images/zh-HK/ds_wordcloud.664a7c07dca57de017c22bf0498cb40f898d48aa85b3c36a80620fea12fadd42.png)
![數據科學文字雲](../../../../translated_images/zh-HK/ds_wordcloud.664a7c07dca57de0.webp)
請訪問 [`notebook.ipynb`](../../../../1-Introduction/01-defining-data-science/notebook.ipynb ':ignore') 閱讀程式碼。你也可以執行程式碼,並即時查看它如何進行所有數據轉換。

@ -5,13 +5,13 @@
"source": [
"# 挑戰:分析有關數據科學的文本\n",
"\n",
"在這個例子中,我們將進行一個簡單的練習,涵蓋傳統數據科學流程的所有步驟。你無需編寫任何代碼,只需點擊下方的單元格執行它們並觀察結果。作為挑戰,我們鼓勵你嘗試使用不同的數據來運行這段代碼。\n",
"在這個範例中,讓我們做一個涵蓋傳統數據科學流程所有步驟的簡單練習。你不必寫任何程式碼,只需點擊以下儲存格以執行它們並觀察結果。作為挑戰,你可以嘗試用不同的資料來執行這段代碼。\n",
"\n",
"## 目標\n",
"\n",
"在這節課中,我們討論了與數據科學相關的不同概念。現在,讓我們嘗試通過進行一些**文本挖掘**來發掘更多相關概念。我們將從一段有關數據科學的文本開始,從中提取關鍵詞,然後嘗試將結果可視化。\n",
"在本課程中,我們一直在討論與數據科學相關的不同概念。讓我們透過進行一些**文本探勘**,嘗試發現更多相關概念。我們將從一篇關於數據科學的文本開始,從中提取關鍵詞,然後嘗試視覺化結果。\n",
"\n",
"作為文本,我將使用維基百科上有關數據科學的頁面:\n"
"作為文本,我將使用維基百科上有關數據科學的頁面:\n"
],
"metadata": {}
},
@ -32,9 +32,9 @@
{
"cell_type": "markdown",
"source": [
"## 第一步:獲取數據\n",
"## Step 1: 獲取數據\n",
"\n",
"每個數據科學流程的第一步都是獲取數據。我們將使用 `requests` 庫來完成這個步驟\n"
"每個數據科學流程的第一步都是獲取數據。我們將使用 `requests` 庫來完成這個工作\n"
],
"metadata": {}
},
@ -66,45 +66,43 @@
{
"cell_type": "markdown",
"source": [
"## 第2步轉換數據\n",
"## 第 2 步:轉換數據\n",
"\n",
"下一步是將數據轉換成適合處理的形式。在我們的例子中,我們已經從網頁下載了 HTML 原始碼,現在需要將其轉換為純文本。\n",
"下一步是將數據轉換為適合處理的形式。在我們的情況中,我們已經下載了網頁的 HTML 原始碼,現在需要將其轉換為純文字。\n",
"\n",
"這可以通過多種方式完成。我們將使用 Python 中最簡單的內建 [HTMLParser](https://docs.python.org/3/library/html.parser.html) 物件。我們需要繼承 `HTMLParser` 類別,並定義程式碼來收集所有 HTML 標籤內的文本內容,但排除 `<script>` 和 `<style>` 標籤中的內容。\n"
"有很多方法可以做到這一點。我們將使用 [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/),這是一個流行的 Python HTML 解析庫。BeautifulSoup 允許我們鎖定特定的 HTML 元素,因此可以專注於維基百科的主要文章內容,同時減少一些導航菜單、側邊欄、頁腳和其他無關的內容(儘管仍可能留下一些樣板文字)。\n"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"首先,我們需要安裝用於 HTML 解析的 BeautifulSoup 庫:\n"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": null,
"source": [
"import sys\r\n",
"!{sys.executable} -m pip install beautifulsoup4"
],
"outputs": [],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 64,
"source": [
"from html.parser import HTMLParser\r\n",
"\r\n",
"class MyHTMLParser(HTMLParser):\r\n",
" script = False\r\n",
" res = \"\"\r\n",
" def handle_starttag(self, tag, attrs):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = True\r\n",
" def handle_endtag(self, tag):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = False\r\n",
" def handle_data(self, data):\r\n",
" if str.strip(data)==\"\" or self.script:\r\n",
" return\r\n",
" self.res += ' '+data.replace('[ edit ]','')\r\n",
"\r\n",
"parser = MyHTMLParser()\r\n",
"parser.feed(text)\r\n",
"text = parser.res\r\n",
"print(text[:1000])"
"from bs4 import BeautifulSoup\r\n\r\n# Parse the HTML content\r\nsoup = BeautifulSoup(text, 'html.parser')\r\n\r\n# Extract only the main article content from Wikipedia\r\n# Wikipedia uses 'mw-parser-output' class for the main article content\r\ncontent = soup.find('div', class_='mw-parser-output')\r\n\r\ndef clean_wikipedia_content(content_node):\r\n \"\"\"Remove common non-article elements from a Wikipedia content node.\"\"\"\r\n # Strip jump links, navboxes, reference lists/superscripts, edit sections, TOC, sidebars, etc.\r\n selectors = [\r\n '.mw-jump-link',\r\n '.navbox',\r\n '.reflist',\r\n 'sup.reference',\r\n '.mw-editsection',\r\n '.hatnote',\r\n '.metadata',\r\n '.infobox',\r\n '#toc',\r\n '.toc',\r\n '.sidebar',\r\n ]\r\n for selector in selectors:\r\n for el in content_node.select(selector):\r\n el.decompose()\r\n\r\nif content:\r\n # Clean the content node to better approximate article text only.\r\n clean_wikipedia_content(content)\r\n text = content.get_text(separator=' ', strip=True)\r\n print(text[:1000])\r\nelse:\r\n print(\"Could not find main content. Using full page text.\")\r\n text = soup.get_text(separator=' ', strip=True)\r\n print(text[:1000])"
],
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" Data science - Wikipedia Data science From Wikipedia, the free encyclopedia Jump to navigation Jump to search Interdisciplinary field of study focused on deriving knowledge and insights from data Not to be confused with information science . The existence of Comet NEOWISE (here depicted as a series of red dots) was discovered by analyzing astronomical survey data acquired by a space telescope , the Wide-field Infrared Survey Explorer . Part of a series on Machine learning and data mining Problems Classification Clustering Regression Anomaly detection AutoML Association rules Reinforcement learning Structured prediction Feature engineering Feature learning Online learning Semi-supervised learning Unsupervised learning Learning to rank Grammar induction Supervised learning ( classification  • regression ) Decision trees Ensembles Bagging Boosting Random forest k -NN Linear regression Naive Bayes Artificial neural networks Logistic regression Perceptron Relevance vector machine \n"
"Data science From Wikipedia, the free encyclopedia Interdisciplinary field of study focused on deriving knowledge and insights from data Data science is an interdisciplinary academic field that uses statistics, scientific computing, scientific methods, processes, algorithms and systems to extract or extrapolate knowledge and insights from noisy, structured, and unstructured data. Data science also integrates domain knowledge from the underlying application domain. Data science is multifaceted and can be described as a science, a research paradigm, a research method, a discipline, a workflow, and a profession.\n"
]
}
],
@ -113,11 +111,11 @@
{
"cell_type": "markdown",
"source": [
"## 第三步:獲取見解\n",
"## Step 3: 獲取洞見\n",
"\n",
"最重要的一步是將我們的數據轉化為可以提取見解的形式。在我們的情況下,我們希望從文本中提取關鍵字,並了解哪些關鍵字更具意義。\n",
"最重要的一步是將我們的數據轉化成可以讓我們從中獲取洞見的形式。在我們的例子中,我們想從文本中提取關鍵詞,並查看哪些關鍵詞更有意義。\n",
"\n",
"我們將使用一個名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來進行關鍵提取。首先,讓我們安裝這個庫,以防它尚未安裝:\n"
"我們將使用一個名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來進行關鍵提取。首先,讓我們安裝這個庫,以防它尚未安裝:\n"
],
"metadata": {}
},
@ -162,7 +160,7 @@
{
"cell_type": "markdown",
"source": [
"主要功能可從 `Rake` 對象獲得,我們可以使用一些參數進行自定義。在我們的情況下,我們將關鍵字的最小長度設置為 5 個字符,關鍵字在文檔中的最小頻率設置為 3關鍵字中的最大單詞數設置為 2。可以隨意嘗試其他值並觀察結果。\n"
"主要功能可從 `Rake` 物件取得,我們可以使用一些參數自訂它。在我們的例子中,我們會設定關鍵字的最小長度為 5 個字元,關鍵字在文件中出現的最小頻率為 3以及關鍵字中最多的詞數為 2。歡迎隨意嘗試其他數值並觀察結果。\n"
],
"metadata": {}
},
@ -211,11 +209,12 @@
{
"cell_type": "markdown",
"source": [
"我們獲得了一份術語清單,並附上了相關的重要性程度。如你所見,最相關的領域,例如機器學習和大數據,位於清單的頂端位置。\n",
"\r\n",
"我們取得了一組術語清單及其相關的重要程度。如您所見,最相關的學科,如機器學習和大數據,皆位於清單的前列位置。\n",
"\n",
"## 第四步:結果視化\n",
"## 第四步:結果視化\n",
"\n",
"人們通常能以視覺形式更好地理解數據。因此,將數據進行可視化以獲取一些洞察通常是有意義的。我們可以使用 Python 中的 `matplotlib` 庫繪製關鍵字及其相關性的簡單分佈\n"
"人們最善於以視覺形式解讀數據。因此,通常將數據視覺化以提取一些見解是有意義的。我們可以使用 Python 中的 `matplotlib` 函式庫繪製關鍵字及其相關性的簡單分佈:\n"
],
"metadata": {}
},
@ -252,7 +251,7 @@
{
"cell_type": "markdown",
"source": [
"不過,還有一個更好的方法來可視化詞頻——使用**文字雲**。我們需要安裝另一個庫,從我們的關鍵詞列表中繪製文字雲。\n"
"不過,有一種更好的方法來視覺化詞頻 —— 使用 **文字雲**。我們需要安裝另一個庫,從我們的關鍵字列表繪製文字雲。\n"
],
"metadata": {}
},
@ -268,7 +267,7 @@
{
"cell_type": "markdown",
"source": [
"`WordCloud` 對象負責接收原始文本或預先計算的單詞及其頻率列表,並返回一個圖像,然後可以使用 `matplotlib` 顯示:\n"
"`WordCloud` 物件負責接收原始文字或預先計算好的詞語及其頻率列表,並回傳一張圖像,然後可以使用 `matplotlib` 顯示:\n"
],
"metadata": {}
},
@ -312,7 +311,7 @@
{
"cell_type": "markdown",
"source": [
"我們也可以將原始文本傳遞給 `WordCloud` - 讓我們看看是否能夠得到類似的結果:\n"
"我們亦可以將原始文字傳入 `WordCloud`,讓我們看看是否能得到類似的結果:\n"
],
"metadata": {}
},
@ -372,9 +371,9 @@
{
"cell_type": "markdown",
"source": [
"你可以看到,文字雲現在看起來更吸引人,但同時也包含了很多雜訊(例如一些無關的詞語如 `Retrieved on`)。此外,我們得到的雙詞關鍵字(例如 *data scientist* 或 *computer science*)也較少。這是因為 RAKE 演算法在從文本中選擇良好關鍵字方面表現得更好。這個例子說明了數據預處理和清理的重要性,因為清晰的結果能幫助我們做出更好的決策。\n",
"你現在可以看到字詞雲看起來更令人印象深刻,但它也包含了很多噪音(例如,不相關的詞彙如 `Retrieved on`)。此外,我們得到的由兩個字組成的關鍵詞較少,例如 *data scientist* 或 *computer science*。這是因為 RAKE 演算法在從文本中挑選好關鍵詞方面表現更佳。此例子說明了資料預處理和清理的重要性,因為最後清晰的圖像將使我們能做出更好的決策。\n",
"\n",
"在這個練習中,我們簡單地從 Wikipedia 文本中提取了一些意義,以關鍵字和文字雲的形式呈現。這個例子雖然簡單,但很好地展示了數據科學家在處理數據時會採取的典型步驟,從數據獲取到可視化。\n",
"在本練習中,我們經歷了一個簡單的過程,從維基百科文本中擷取一些意義,以關鍵詞和字詞雲的形式呈現。這個例子相當簡單,但很好地展示了資料科學家處理資料時所有典型步驟,從資料擷取開始,到視覺化的全過程。\n",
"\n",
"在我們的課程中,我們將詳細討論所有這些步驟。\n"
],
@ -394,7 +393,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免責聲明** \n此文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。原始語言的文件應被視為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或錯誤詮釋概不負責。\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免責聲明** \n本文件由 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於確保準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的本地語言版本應視為權威資料。對於重要資訊,建議尋求專業人工翻譯。本公司對因使用此翻譯而產生的任何誤解或曲解概不負責。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -418,12 +417,6 @@
},
"interpreter": {
"hash": "c28e7b6bf4e5b397b8288a85bf0a94ea8d3585ce2b01919feb195678ec71581b"
},
"coopTranslator": {
"original_hash": "50c0f0a5204a18405611cbe7e0fec56b",
"translation_date": "2025-09-02T10:12:29+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "hk"
}
},
"nbformat": 4,

@ -5,15 +5,15 @@
"source": [
"# 挑戰:分析有關數據科學的文本\n",
"\n",
"> *在這份筆記中,我們嘗試使用不同的 URL - 關於機器學習的維基百科文章。你會發現,與數據科學不同,這篇文章包含了許多術語,這使得分析更加困難。我們需要在完成關鍵字提取後,想出另一種方法來清理數據,以去除一些頻繁但無意義的詞組。*\n",
"> *在這個筆記本中,我們嘗試使用不同的 URL - 機器學習的 Wikipedia 文章。你可以看到,與數據科學不同,這篇文章包含了大量術語,這使得分析變得更加複雜。我們需要在進行關鍵詞提取後,想出另一種方法來清理數據,去除一些頻繁但不具意義的詞組。*\n",
"\n",
"在這個例子中,我們將進行一個簡單的練習,涵蓋傳統數據科學流程的所有步驟。你不需要編寫任何代碼,只需點擊下面的單元格執行它們並觀察結果。作為挑戰,我們鼓勵你使用不同的數據來嘗試這段代碼。\n",
"在這個例子中,讓我們做一個涵蓋傳統數據科學流程所有步驟的簡單練習。你不需要編寫任何代碼,可以點擊下面的單元來執行它們並觀察結果。作為一個挑戰,鼓勵你嘗試使用不同的數據來運行這段代碼。\n",
"\n",
"## 目標\n",
"\n",
"在這節課中,我們討論了與數據科學相關的不同概念。讓我們嘗試通過一些**文本挖掘**來發現更多相關概念。我們將從一段有關數據科學的文本開始,從中提取關鍵字,然後嘗試將結果可視化。\n",
"在本課中,我們討論了與數據科學相關的不同概念。讓我們嘗試通過做一些**文本挖掘**來發掘更多相關概念。我們將從關於數據科學的文本開始,從中提取關鍵字,然後嘗試將結果可視化。\n",
"\n",
"作為文本,我將使用維基百科上關於數據科學的頁面:\n"
"作為文本,我將使用 Wikipedia 上關於數據科學的頁面:\n"
],
"metadata": {}
},
@ -35,9 +35,9 @@
{
"cell_type": "markdown",
"source": [
"## 第一步:獲取數據\n",
"## Step 1: 獲取數據\n",
"\n",
"每個數據科學流程的第一步是獲取數據。我們將使用 `requests` 庫來完成這個步驟:\n"
"每個數據科學流程的第一步是獲取數據。我們將使用 `requests` 函式庫來完成這個步驟:\n"
],
"metadata": {}
},
@ -69,45 +69,43 @@
{
"cell_type": "markdown",
"source": [
"## 第2步轉換數據\n",
"## Step 2: 轉換數據\n",
"\n",
"下一步是將數據轉換成適合處理的形式。在我們的例子中,我們已經從網頁下載了 HTML 原始碼,現在需要將其轉換為純文本。\n",
"下一步是將數據轉換成合適處理的形式。在我們的案例中,我們下載了網頁的 HTML 原始碼,需要將它轉換成純文字。\n",
"\n",
"這可以通過多種方式完成。我們將使用 Python 中最簡單的內建 [HTMLParser](https://docs.python.org/3/library/html.parser.html) 物件。我們需要繼承 `HTMLParser` 類別,並定義代碼來收集 HTML 標籤內的所有文本,但排除 `<script>` 和 `<style>` 標籤中的內容。\n"
"這可以有很多方法。我們將使用 [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/),這是 Python 中一個流行的 HTML 解析庫。BeautifulSoup 允許我們鎖定特定的 HTML 元素,所以可以專注於維基百科的主要文章內容,減少一些導航菜單、側邊欄、頁尾及其他無關內容(儘管仍可能會有一些樣板文字留存)。\n"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"首先,我們需要安裝 BeautifulSoup 庫以進行 HTML 解析:\n"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": null,
"source": [
"import sys\r\n",
"!{sys.executable} -m pip install beautifulsoup4"
],
"outputs": [],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 4,
"source": [
"from html.parser import HTMLParser\r\n",
"\r\n",
"class MyHTMLParser(HTMLParser):\r\n",
" script = False\r\n",
" res = \"\"\r\n",
" def handle_starttag(self, tag, attrs):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = True\r\n",
" def handle_endtag(self, tag):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = False\r\n",
" def handle_data(self, data):\r\n",
" if str.strip(data)==\"\" or self.script:\r\n",
" return\r\n",
" self.res += ' '+data.replace('[ edit ]','')\r\n",
"\r\n",
"parser = MyHTMLParser()\r\n",
"parser.feed(text)\r\n",
"text = parser.res\r\n",
"print(text[:1000])"
"from bs4 import BeautifulSoup\r\n\r\n# Parse the HTML content\r\nsoup = BeautifulSoup(text, 'html.parser')\r\n\r\n# Extract only the main article content from Wikipedia\r\n# Wikipedia uses 'mw-parser-output' class for the main article content\r\ncontent = soup.find('div', class_='mw-parser-output')\r\n\r\ndef clean_wikipedia_content(content_node):\r\n \"\"\"Remove common non-article elements from a Wikipedia content node.\"\"\"\r\n # Strip jump links, navboxes, reference lists/superscripts, edit sections, TOC, sidebars, etc.\r\n selectors = [\r\n '.mw-jump-link',\r\n '.navbox',\r\n '.reflist',\r\n 'sup.reference',\r\n '.mw-editsection',\r\n '.hatnote',\r\n '.metadata',\r\n '.infobox',\r\n '#toc',\r\n '.toc',\r\n '.sidebar',\r\n ]\r\n for selector in selectors:\r\n for el in content_node.select(selector):\r\n el.decompose()\r\n\r\nif content:\r\n # Clean the content node to better approximate article text only.\r\n clean_wikipedia_content(content)\r\n text = content.get_text(separator=' ', strip=True)\r\n print(text[:1000])\r\nelse:\r\n print(\"Could not find main content. Using full page text.\")\r\n text = soup.get_text(separator=' ', strip=True)\r\n print(text[:1000])"
],
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" Machine learning - Wikipedia Machine learning From Wikipedia, the free encyclopedia Jump to navigation Jump to search Study of algorithms that improve automatically through experience For the journal, see Machine Learning (journal) . \"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition . Part of a series on Artificial intelligence Major goals Artificial general intelligence Planning Computer vision General game playing Knowledge reasoning Machine learning Natural language processing Robotics Approaches Symbolic Deep learning Bayesian networks Evolutionary algorithms Philosophy Ethics Existential risk Turing test Chinese room Control problem Friendly AI History Timeline Progress AI winter Technology Applications Projects Programming languages Glossary Glossary v t e Part of a series on Machine learning and data mining Problems Classification Clustering Regression Anomaly detection Data Cleaning AutoML Associ\n"
"Machine learning From Wikipedia, the free encyclopedia Study of algorithms that improve automatically through experience Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of statistical algorithms that can learn from data and generalize to unseen data, and thus perform tasks without explicit instructions. Recently, artificial neural networks have been able to surpass many previous approaches in performance. ML finds application in many fields, including natural language processing, computer vision, speech recognition, email filtering, agriculture, and medicine.\n"
]
}
],
@ -116,11 +114,11 @@
{
"cell_type": "markdown",
"source": [
"## 第三步:獲取見解\n",
"## Step 3: 獲取洞察\n",
"\n",
"最重要的一步是將我們的數據轉化為可以提取見解的形式。在我們的情況下,我們希望從文本中提取關鍵字,並查看哪些關鍵字更具意義。\n",
"最重要的一步是將我們的數據轉換成某種形式,以便我們可以從中獲得洞察。在我們的例子中,我們想從文本中提取關鍵詞,並查看哪些關鍵詞更有意義。\n",
"\n",
"我們將使用一個名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來進行關鍵提取。首先,讓我們安裝這個庫,以防它尚未安裝:\n"
"我們將使用名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來進行關鍵提取。首先,讓我們安裝這個庫,以防它尚未安裝:\n"
],
"metadata": {}
},
@ -172,7 +170,7 @@
{
"cell_type": "markdown",
"source": [
"主要功能可從 `Rake` 對象獲得,我們可以使用一些參數來自定義。在我們的情況下,我們將關鍵字的最小長度設置為 5 個字符,關鍵字在文檔中的最小頻率設置為 3關鍵字中的最大單詞數設置為 2。可以隨意嘗試其他值並觀察結果。\n"
"主要功能可從 `Rake` 物件中使用,我們可以透過一些參數來自訂。在我們的例子中,會將關鍵字的最短長度設為 5 個字元,關鍵字在文件中出現的最小頻率設為 3以及關鍵字中最多的字數設為 2。歡迎隨意嘗試其他數值並觀察結果。\n"
],
"metadata": {}
},
@ -353,11 +351,11 @@
{
"cell_type": "markdown",
"source": [
"我們獲得了一份術語列表,並附上其重要程度。如你所見,最相關的領域,例如機器學習和大數據,位於列表的頂端位置。\n",
"我們獲取了一串詞語列表,連同相關的權重。正如你所見,最有相關性的學科,比如機器學習和大數據,都出現在列表的頂部位置。\n",
"\n",
"## 第四步:結果視覺化\n",
"## Step 4: 視覺化結果\n",
"\n",
"人們通常能以視覺形式更好地理解數據。因此,將數據進行視覺化以獲取一些洞察通常是有意義的。我們可以使用 Python 中的 `matplotlib` 庫來繪製關鍵字及其相關性的簡單分佈圖:\n"
"人們能最有效地以視覺化形式解讀數據。因此,通常以可視化數據來獲得洞見是有意義的。我們可以使用 Python 的 `matplotlib` 函式庫繪製關鍵詞及其關聯度的簡單分佈圖:\n"
],
"metadata": {}
},
@ -392,7 +390,7 @@
{
"cell_type": "markdown",
"source": [
"不過,還有一個更好的方法來可視化詞頻——使用**文字雲**。我們需要安裝另一個庫來從我們的關鍵詞列表中繪製文字雲。\n"
"不過,有一種更好的方法來視覺化詞頻,那就是使用 **詞雲**。我們需要安裝另一個庫,從我們的關鍵字列表中繪製詞雲。\n"
],
"metadata": {}
},
@ -408,7 +406,7 @@
{
"cell_type": "markdown",
"source": [
"`WordCloud` 物件負責接收原始文本或預先計算的單詞及其頻率列表,並返回一個圖像,隨後可使用 `matplotlib` 顯示\n"
"`WordCloud` 物件負責接收原始文字,或者預先計算好的詞語及其頻率列表,並返回一張圖像,然後可以使用 `matplotlib` 來顯示該圖像\n"
],
"metadata": {}
},
@ -441,7 +439,7 @@
{
"cell_type": "markdown",
"source": [
"我們也可以將原始文本傳遞給 `WordCloud` - 讓我們看看是否能夠得到類似的結果:\n"
"我們亦可以將原始文字傳入 `WordCloud` - 讓我們看看能否得到相似的結果:\n"
],
"metadata": {}
},
@ -490,9 +488,9 @@
{
"cell_type": "markdown",
"source": [
"你可以看到現在的文字雲看起來更吸引人,但同時也包含了很多雜訊(例如像 `Retrieved on` 這樣無關的字詞)。此外,我們得到的雙字關鍵詞(例如 *data scientist* 或 *computer science*)也較少。這是因為 RAKE 演算法在從文本中選擇良好關鍵詞方面表現得更好。這個例子說明了數據預處理和清理的重要性,因為清晰的結果能幫助我們做出更好的決策。\n",
"你可以看到現在的文字雲看起來更吸引,但它也包含了許多雜訊(例如無關的詞彙如 `Retrieved on`)。此外,我們獲得的兩詞關鍵字較少,例如 *data scientist* 或 *computer science*。這是因為 RAKE 演算法在從文本中選擇良好關鍵字方面表現得更好。這個例子說明了數據預處理和清理的重要性,因為最後清晰的畫面能讓我們做出更好的決策。\n",
"\n",
"在這個練習中,我們簡單地從 Wikipedia 文本中提取了一些意義,以關鍵詞和文字雲的形式呈現。這個例子雖然簡單,但很好地展示了數據科學家在處理數據時會採取的典型步驟,從數據獲取到可視化。\n",
"在這個練習中,我們經歷了一個簡單的過程,從維基百科文本中提取某些意義,以關鍵字和文字雲的形式呈現。這個範例相當簡單,但它很好地展示了一個資料科學家處理數據時的典型步驟,從數據獲取開始,到視覺化為止。\n",
"\n",
"在我們的課程中,我們將詳細討論所有這些步驟。\n"
],
@ -502,7 +500,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免責聲明** \n此文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或錯誤解讀概不負責。\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免責聲明** \n本文件由 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們力求準確,但請注意自動翻譯可能包含錯誤或不準確之處。文件的原文版本應被視為權威來源。對於重要資訊,建議聘請專業人工翻譯。對因使用本翻譯所引起的任何誤解或誤釋,我們概不負責。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -526,12 +524,6 @@
},
"interpreter": {
"hash": "86193a1ab0ba47eac1c69c1756090baa3b420b3eea7d4aafab8b85f8b312f0c5"
},
"coopTranslator": {
"original_hash": "dbdf34788efab64e5d817f1df38965a8",
"translation_date": "2025-09-02T10:26:42+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/notebook.ipynb",
"language_code": "hk"
}
},
"nbformat": 4,

@ -6,7 +6,7 @@
統計學與概率論是數學中兩個密切相關的領域,對於數據科學非常重要。雖然在沒有深入數學知識的情況下也可以處理數據,但了解一些基本概念仍然是有益的。在這裡,我們將提供一個簡短的介紹,幫助你入門。
[![介紹影片](../../../../translated_images/zh-HK/video-prob-and-stats.e4282e5efa2f2543400843ed98b1057065c9600cebfc8a728e8931b5702b2ae4.png)](https://youtu.be/Z5Zy85g4Yjw)
[![介紹影片](../../../../translated_images/zh-HK/video-prob-and-stats.e4282e5efa2f2543.webp)](https://youtu.be/Z5Zy85g4Yjw)
## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/6)
@ -30,7 +30,7 @@
我們只能討論變數落在某個值區間內的概率,例如 P(t<sub>1</sub>≤X<t<sub>2</sub>)。在這種情況下,概率分佈由 **概率密度函數** p(x) 描述,其公式如下:
![P(t_1\le X<t_2)=\int_{t_1}^{t_2}p(x)dx](../../../../translated_images/zh-HK/probability-density.a8aad29f17a14afb519b407c7b6edeb9f3f9aa5f69c9e6d9445f604e5f8a2bf7.png)
![P(t_1\le X<t_2)=\int_{t_1}^{t_2}p(x)dx](../../../../translated_images/zh-HK/probability-density.a8aad29f17a14afb.webp)
連續型均勻分佈是均勻分佈的連續版本,定義在有限區間內。變數 X 落入某個區間的概率與區間長度 l 成正比,且最大為 1。
@ -73,11 +73,11 @@
以下是顯示我們數據的平均值、中位數和四分位數的盒形圖:
![體重盒形圖](../../../../translated_images/zh-HK/weight-boxplot.1dbab1c03af26f8a008fff4e17680082c8ab147d6df646cbac440bbf8f5b9c42.png)
![體重盒形圖](../../../../translated_images/zh-HK/weight-boxplot.1dbab1c03af26f8a.webp)
由於我們的數據包含不同球員 **角色** 的信息,我們還可以按角色繪製盒形圖——這將幫助我們了解參數值在不同角色之間的差異。這次我們將考慮身高:
![按角色的盒形圖](../../../../translated_images/zh-HK/boxplot_byrole.036b27a1c3f52d42f66fba2324ec5cde0a1bca6a01a619eeb0ce7cd054b2527b.png)
![按角色的盒形圖](../../../../translated_images/zh-HK/boxplot_byrole.036b27a1c3f52d42.webp)
這個圖表表明,平均而言,一壘手的身高高於二壘手的身高。在本課程的後面部分,我們將學習如何更正式地檢驗這一假設,以及如何證明我們的數據在統計上具有顯著性。
@ -85,7 +85,7 @@
為了查看我們數據的分佈,我們可以繪製一個稱為 **直方圖** 的圖表。X 軸包含若干不同的體重區間(即 **箱**),而垂直軸顯示隨機變數樣本落入某個區間的次數。
![真實世界數據的直方圖](../../../../translated_images/zh-HK/weight-histogram.bfd00caf7fc30b145b21e862dba7def41c75635d5280de25d840dd7f0b00545e.png)
![真實世界數據的直方圖](../../../../translated_images/zh-HK/weight-histogram.bfd00caf7fc30b14.webp)
從這個直方圖中可以看出,所有值都集中在某個平均體重附近,距離平均體重越遠,該值出現的次數越少。也就是說,棒球運動員的體重與平均體重差異很大的可能性非常低。體重的方差顯示了體重與平均值可能的差異程度。
@ -102,7 +102,7 @@ samples = np.random.normal(mean,std,1000)
如果我們繪製生成樣本的直方圖,我們會看到與上面顯示的圖非常相似的圖像。如果我們增加樣本數量和箱的數量,我們可以生成更接近理想的正態分佈圖像:
![平均值=0標準差=1 的正態分佈](../../../../translated_images/zh-HK/normal-histogram.dfae0d67c202137d552d0015fb87581eca263925e512404f3c12d8885315432e.png)
![平均值=0標準差=1 的正態分佈](../../../../translated_images/zh-HK/normal-histogram.dfae0d67c202137d.webp)
*平均值=0標準差=1 的正態分佈*
@ -224,7 +224,7 @@ array([[1. , 0.52959196],
在我們的情況下,值 0.53 表明一個人的體重和身高之間存在一定的相關性。我們還可以繪製一個值對另一個值的散點圖,以直觀地查看關係:
![體重與身高的關係](../../../../translated_images/zh-HK/weight-height-relationship.3f06bde4ca2aba9974182c4ef037ed602acd0fbbbbe2ca91cefd838a9e66bcf9.png)
![體重與身高的關係](../../../../translated_images/zh-HK/weight-height-relationship.3f06bde4ca2aba99.webp)
> 更多相關性和協方差的例子可以在 [附帶的筆記本](notebook.ipynb) 中找到。

@ -1,6 +1,6 @@
# 數據科學入門
![數據運作中](../../../translated_images/zh-HK/data.48e22bb7617d8d92188afbc4c48effb920ba79f5cebdc0652cd9f34bbbd90c18.jpg)
![數據運作中](../../../translated_images/zh-HK/data.48e22bb7617d8d92.webp)
> 圖片由 <a href="https://unsplash.com/@dawson2406?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Stephen Dawson</a> 提供,來源於 <a href="https://unsplash.com/s/photos/data?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,你將了解什麼是數據科學,並學習數據科學家必須考慮的倫理問題。你還會學習數據的定義,並簡單了解統計學和概率論,這些是數據科學的核心學術領域。

@ -4,7 +4,7 @@
| :-------------------------------------------------------------------------------------------------------: |
| 使用 Python - _由 [@nitya](https://twitter.com/nitya) 繪製的手繪筆記_ |
[![介紹影片](../../../../translated_images/zh-HK/video-ds-python.245247dc811db8e4d5ac420246de8a118c63fd28f6a56578d08b630ae549f260.png)](https://youtu.be/dZjWOGbsN4Y)
[![介紹影片](../../../../translated_images/zh-HK/video-ds-python.245247dc811db8e4.webp)](https://youtu.be/dZjWOGbsN4Y)
雖然數據庫提供了非常高效的方式來存儲數據並使用查詢語言進行查詢,但最靈活的數據處理方式是編寫自己的程序來操作數據。在許多情況下,使用數據庫查詢可能更有效。然而,在某些需要更複雜數據處理的情況下,使用 SQL 並不容易完成這些操作。
@ -65,7 +65,7 @@ print(f"Length of index is {len(idx)}")
items_sold = pd.Series(np.random.randint(25,50,size=len(idx)),index=idx)
items_sold.plot()
```
![時間序列圖](../../../../translated_images/zh-HK/timeseries-1.80de678ab1cf727e50e00bcf24009fa2b0a8b90ebc43e34b99a345227d28e467.png)
![時間序列圖](../../../../translated_images/zh-HK/timeseries-1.80de678ab1cf727e.webp)
假設每週我們都會為朋友舉辦派對,並額外準備 10 盒冰淇淋。我們可以創建另一個以週為索引的 Series 來展示這一點:
```python
@ -76,7 +76,7 @@ additional_items = pd.Series(10,index=pd.date_range(start_date,end_date,freq="W"
total_items = items_sold.add(additional_items,fill_value=0)
total_items.plot()
```
![時間序列圖](../../../../translated_images/zh-HK/timeseries-2.aae51d575c55181ceda81ade8c546a2fc2024f9136934386d57b8a189d7570ff.png)
![時間序列圖](../../../../translated_images/zh-HK/timeseries-2.aae51d575c55181c.webp)
> **注意**:我們並未使用簡單的語法 `total_items+additional_items`。如果這樣做,結果 Series 中會有許多 `NaN`*非數值*)值。這是因為在 `additional_items` Series 的某些索引點上存在缺失值,而將 `NaN` 與任何值相加的結果都是 `NaN`。因此,我們需要在相加時指定 `fill_value` 參數。
@ -85,7 +85,7 @@ total_items.plot()
monthly = total_items.resample("1M").mean()
ax = monthly.plot(kind='bar')
```
![每月時間序列平均值](../../../../translated_images/zh-HK/timeseries-3.f3147cbc8c624881008564bc0b5d9fcc15e7374d339da91766bd0e1c6bd9e3af.png)
![每月時間序列平均值](../../../../translated_images/zh-HK/timeseries-3.f3147cbc8c624881.webp)
### DataFrame
@ -211,7 +211,7 @@ df = pd.read_csv('file.csv')
由於我們想展示如何處理數據,我們邀請你打開 [`notebook-covidspread.ipynb`](notebook-covidspread.ipynb) 並從頭到尾閱讀。你也可以執行單元格,並完成我們在最後留下的一些挑戰。
![COVID 傳播](../../../../translated_images/zh-HK/covidspread.f3d131c4f1d260ab0344d79bac0abe7924598dd754859b165955772e1bd5e8a2.png)
![COVID 傳播](../../../../translated_images/zh-HK/covidspread.f3d131c4f1d260ab.webp)
> 如果你不知道如何在 Jupyter Notebook 中運行代碼,可以查看 [這篇文章](https://soshnikov.com/education/how-to-execute-notebooks-from-github/)。
@ -233,7 +233,7 @@ df = pd.read_csv('file.csv')
打開 [`notebook-papers.ipynb`](notebook-papers.ipynb) 並從頭到尾閱讀。你也可以執行單元格,並完成我們在最後留下的一些挑戰。
![COVID 醫療處理](../../../../translated_images/zh-HK/covidtreat.b2ba59f57ca45fbcda36e0ddca3f8cfdddeeed6ca879ea7f866d93fa6ec65791.png)
![COVID 醫療處理](../../../../translated_images/zh-HK/covidtreat.b2ba59f57ca45fbc.webp)
## 處理圖片數據

File diff suppressed because one or more lines are too long

@ -1,6 +1,6 @@
# 處理數據
![數據之愛](../../../translated_images/zh-HK/data-love.a22ef29e6742c852505ada062920956d3d7604870b281a8ca7c7ac6f37381d5a.jpg)
![數據之愛](../../../translated_images/zh-HK/data-love.a22ef29e6742c852.webp)
> 照片由 <a href="https://unsplash.com/@swimstaralex?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Alexander Sinn</a> 提供,來自 <a href="https://unsplash.com/s/photos/data?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,你將學習一些管理、操作和應用數據的方法。你會了解關聯式和非關聯式數據庫,以及數據如何存儲在其中。你將學習使用 Python 管理數據的基礎知識,並探索多種使用 Python 管理和挖掘數據的方法。

@ -42,7 +42,7 @@ honey.head()
```python
sns.relplot(x="priceperlb", y="state", data=honey, height=15, aspect=.5);
```
![scatterplot 1](../../../../translated_images/zh-HK/scatter1.5e1aa5fd6706c5d12b5e503ccb77f8a930f8620f539f524ddf56a16c039a5d2f.png)
![scatterplot 1](../../../../translated_images/zh-HK/scatter1.5e1aa5fd6706c5d1.webp)
接下來,使用蜂蜜色調展示價格隨年份的變化。您可以通過添加 'hue' 參數來展示每年的變化:
@ -51,7 +51,7 @@ sns.relplot(x="priceperlb", y="state", data=honey, height=15, aspect=.5);
```python
sns.relplot(x="priceperlb", y="state", hue="year", palette="YlOrBr", data=honey, height=15, aspect=.5);
```
![scatterplot 2](../../../../translated_images/zh-HK/scatter2.c0041a58621ca702990b001aa0b20cd68c1e1814417139af8a7211a2bed51c5f.png)
![scatterplot 2](../../../../translated_images/zh-HK/scatter2.c0041a58621ca702.webp)
通過這種色彩方案的改變,您可以清楚地看到蜂蜜每磅價格隨年份的明顯增長趨勢。事實上,如果您查看數據中的樣本集(例如選擇一個州,亞利桑那州),您可以看到價格每年增長的模式,只有少數例外:
@ -80,7 +80,7 @@ sns.relplot(x="priceperlb", y="state", size="year", data=honey, height=15, aspec
```
您可以看到點的大小逐漸增大。
![scatterplot 3](../../../../translated_images/zh-HK/scatter3.3c160a3d1dcb36b37900ebb4cf97f34036f28ae2b7b8e6062766c7c1dfc00853.png)
![scatterplot 3](../../../../translated_images/zh-HK/scatter3.3c160a3d1dcb36b3.webp)
這是否是一個簡單的供需問題?由於氣候變化和蜂群崩潰等因素,是否每年可供購買的蜂蜜減少,因此價格上漲?
@ -95,7 +95,7 @@ sns.relplot(x="year", y="priceperlb", kind="line", data=honey);
```
答案是的但在2003年左右有一些例外
![line chart 1](../../../../translated_images/zh-HK/line1.f36eb465229a3b1fe385cdc93861aab3939de987d504b05de0b6cd567ef79f43.png)
![line chart 1](../../../../translated_images/zh-HK/line1.f36eb465229a3b1f.webp)
✅ 由於 Seaborn 將數據聚合到一條線上它通過繪製均值和均值周圍的95%置信區間來顯示每個 x 值的多個測量值。[來源](https://seaborn.pydata.org/tutorial/relational.html)。這種耗時的行為可以通過添加 `ci=None` 禁用。
@ -105,7 +105,7 @@ sns.relplot(x="year", y="priceperlb", kind="line", data=honey);
sns.relplot(x="year", y="totalprod", kind="line", data=honey);
```
![line chart 2](../../../../translated_images/zh-HK/line2.a5b3493dc01058af6402e657aaa9ae1125fafb5e7d6630c777aa60f900a544e4.png)
![line chart 2](../../../../translated_images/zh-HK/line2.a5b3493dc01058af.webp)
答案:並不完全。如果您查看總生產量,實際上在那一年似乎有所增加,儘管總體而言蜂蜜的生產量在這些年中呈下降趨勢。
@ -130,7 +130,7 @@ sns.relplot(
```
在這個視覺化中,您可以比較每年的每群產量和蜂群數量,並將列的 wrap 設置為3
![facet grid](../../../../translated_images/zh-HK/facet.6a34851dcd540050dcc0ead741be35075d776741668dd0e42f482c89b114c217.png)
![facet grid](../../../../translated_images/zh-HK/facet.6a34851dcd540050.webp)
對於這個數據集,關於蜂群數量和每群產量,按年份和州比較並沒有特別突出的地方。是否有其他方式來尋找這兩個變量之間的相關性?
@ -153,7 +153,7 @@ sns.despine(right=False)
plt.ylabel('colony yield')
ax.figure.legend();
```
![superimposed plots](../../../../translated_images/zh-HK/dual-line.a4c28ce659603fab2c003f4df816733df2bf41d1facb7de27989ec9afbf01b33.png)
![superimposed plots](../../../../translated_images/zh-HK/dual-line.a4c28ce659603fab.webp)
雖然在2003年沒有明顯的異常但這讓我們以一個稍微樂觀的結論結束本課儘管蜂群數量總體上在下降但蜂群數量正在穩定即使每群產量在減少。

@ -57,7 +57,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
```
在這裡,你安裝了 `ggplot2` 套件,然後使用 `library("ggplot2")` 命令將其導入工作空間。要在 ggplot 中繪製任何圖表,使用 `ggplot()` 函數並指定數據集、x 和 y 變量作為屬性。在這種情況下,我們使用 `geom_line()` 函數,因為我們的目標是繪製折線圖。
![MaxWingspan-lineplot](../../../../../translated_images/zh-HK/MaxWingspan-lineplot.b12169f99d26fdd263f291008dfd73c18a4ba8f3d32b1fda3d74af51a0a28616.png)
![MaxWingspan-lineplot](../../../../../translated_images/zh-HK/MaxWingspan-lineplot.b12169f99d26fdd2.webp)
你立即注意到什麼似乎至少有一個異常值——那是一個相當大的翼展2000+ 厘米的翼展超過 20 米——明尼蘇達州有翼龍在飛嗎?讓我們調查一下。
@ -75,7 +75,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
```
我們在 `theme` 中指定角度,並在 `xlab()``ylab()` 中分別指定 x 和 y 軸標籤。`ggtitle()` 為圖表/圖形命名。
![MaxWingspan-lineplot-improved](../../../../../translated_images/zh-HK/MaxWingspan-lineplot-improved.04b73b4d5a59552a6bc7590678899718e1f065abe9eada9ebb4148939b622fd4.png)
![MaxWingspan-lineplot-improved](../../../../../translated_images/zh-HK/MaxWingspan-lineplot-improved.04b73b4d5a59552a.webp)
即使將標籤的旋轉設置為 45 度,仍然有太多標籤難以閱讀。讓我們嘗試另一種策略:僅標記那些異常值並在圖表內設置標籤。你可以使用散點圖來為標籤留出更多空間:
@ -91,7 +91,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
你發現了什麼?
![MaxWingspan-scatterplot](../../../../../translated_images/zh-HK/MaxWingspan-scatterplot.60dc9e0e19d32700283558f253841fdab5104abb62bc96f7d97f9c0ee857fa8b.png)
![MaxWingspan-scatterplot](../../../../../translated_images/zh-HK/MaxWingspan-scatterplot.60dc9e0e19d32700.webp)
## 篩選數據
@ -110,7 +110,7 @@ ggplot(data=birds_filtered, aes(x=Name, y=MaxWingspan,group=1)) +
```
我們創建了一個新的數據框 `birds_filtered`,然後繪製了一個散點圖。通過篩選掉異常值,你的數據現在更加一致且易於理解。
![MaxWingspan-scatterplot-improved](../../../../../translated_images/zh-HK/MaxWingspan-scatterplot-improved.7d0af81658c65f3e75b8fedeb2335399e31108257e48db15d875ece608272051.png)
![MaxWingspan-scatterplot-improved](../../../../../translated_images/zh-HK/MaxWingspan-scatterplot-improved.7d0af81658c65f3e.webp)
現在我們至少在翼展方面有了一個更乾淨的數據集,讓我們了解更多關於這些鳥類的信息。
@ -153,7 +153,7 @@ birds_filtered %>% group_by(Category) %>%
```
在以下代碼片段中,我們安裝了 [dplyr](https://www.rdocumentation.org/packages/dplyr/versions/0.7.8) 和 [lubridate](https://www.rdocumentation.org/packages/lubridate/versions/1.8.0) 套件,以幫助操作和分組數據以繪製堆疊條形圖。首先,你按鳥類的 `Category` 分組數據,然後總結 `MinLength`、`MaxLength`、`MinBodyMass`、`MaxBodyMass`、`MinWingspan`、`MaxWingspan` 列。然後,使用 `ggplot2` 套件繪製條形圖並指定不同類別的顏色和標籤。
![堆疊條形圖](../../../../../translated_images/zh-HK/stacked-bar-chart.0c92264e89da7b391a7490224d1e7059a020e8b74dcd354414aeac78871c02f1.png)
![堆疊條形圖](../../../../../translated_images/zh-HK/stacked-bar-chart.0c92264e89da7b39.webp)
然而,這個條形圖難以閱讀,因為有太多未分組的數據。你需要選擇你想要繪製的數據,所以讓我們看看基於鳥類類別的鳥類長度。
@ -168,7 +168,7 @@ ggplot(birds_count,aes(Category,n))+geom_bar(stat="identity")+coord_flip()
```
你首先計算 `Category` 列中的唯一值,然後將它們排序到一個新的數據框 `birds_count` 中。這些排序後的數據在相同層次中進行分級,以便按排序方式繪製。使用 `ggplot2`,你然後在條形圖中繪製數據。`coord_flip()` 繪製水平條形圖。
![類別-長度](../../../../../translated_images/zh-HK/category-length.7e34c296690e85d64f7e4d25a56077442683eca96c4f5b4eae120a64c0755636.png)
![類別-長度](../../../../../translated_images/zh-HK/category-length.7e34c296690e85d6.webp)
這個條形圖很好地展示了每個類別中鳥類的數量。一眼就能看出,在這個地區最多的鳥類是鴨/鵝/水禽類別。明尼蘇達州是“萬湖之地”,所以這並不令人驚訝!
@ -191,7 +191,7 @@ ggplot(birds_grouped,aes(Category,MaxLength))+geom_bar(stat="identity")+coord_fl
```
我們按 `Category` 分組 `birds_filtered` 數據,然後繪製條形圖。
![比較數據](../../../../../translated_images/zh-HK/comparingdata.f486a450d61c7ca5416f27f3f55a6a4465d00df3be5e6d33936e9b07b95e2fdd.png)
![比較數據](../../../../../translated_images/zh-HK/comparingdata.f486a450d61c7ca5.webp)
這裡沒有什麼令人驚訝的:蜂鳥的最大長度比鵜鶘或鵝要小得多。當數據符合邏輯時,這是件好事!
@ -203,7 +203,7 @@ ggplot(data=birds_grouped, aes(x=Category)) +
geom_bar(aes(y=MinLength), stat="identity", position="identity", fill='orange')+
coord_flip()
```
![疊加值](../../../../../translated_images/zh-HK/superimposed-values.5363f0705a1da4167625a373a1064331ea3cb7a06a297297d0734fcc9b3819a0.png)
![疊加值](../../../../../translated_images/zh-HK/superimposed-values.5363f0705a1da416.webp)
## 🚀 挑戰

@ -36,7 +36,7 @@ ggplot(data=birds_filtered, aes(x=Order, y=MaxLength,group=1)) +
geom_point() +
ggtitle("Max Length per order") + coord_flip()
```
![每目最大長度](../../../../../translated_images/zh-HK/max-length-per-order.e5b283d952c78c12b091307c5d3cf67132dad6fefe80a073353b9dc5c2bd3eb8.png)
![每目最大長度](../../../../../translated_images/zh-HK/max-length-per-order.e5b283d952c78c12.webp)
這提供了每個鳥類目身體長度分佈的概覽,但這並不是顯示真實分佈的最佳方式。這個任務通常通過創建直方圖來完成。
@ -48,7 +48,7 @@ ggplot(data=birds_filtered, aes(x=Order, y=MaxLength,group=1)) +
ggplot(data = birds_filtered, aes(x = MaxBodyMass)) +
geom_histogram(bins=10)+ylab('Frequency')
```
![整個數據集的分佈](../../../../../translated_images/zh-HK/distribution-over-the-entire-dataset.d22afd3fa96be854e4c82213fedec9e3703cba753d07fad4606aadf58cf7e78e.png)
![整個數據集的分佈](../../../../../translated_images/zh-HK/distribution-over-the-entire-dataset.d22afd3fa96be854.webp)
如你所見,這個數據集中大多數 400 多種鳥類的最大體重都在 2000 以下。通過將 `bins` 參數設置為更高的數值(例如 30可以獲得更多的數據洞察
@ -56,7 +56,7 @@ ggplot(data = birds_filtered, aes(x = MaxBodyMass)) +
ggplot(data = birds_filtered, aes(x = MaxBodyMass)) + geom_histogram(bins=30)+ylab('Frequency')
```
![30 個區間的分佈](../../../../../translated_images/zh-HK/distribution-30bins.6a3921ea7a421bf71f06bf5231009e43d1146f1b8da8dc254e99b5779a4983e5.png)
![30 個區間的分佈](../../../../../translated_images/zh-HK/distribution-30bins.6a3921ea7a421bf7.webp)
這個圖表以更細緻的方式顯示了分佈。通過僅選擇給定範圍內的數據,可以創建一個不那麼偏向左側的圖表:
@ -68,7 +68,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_histogram(bins=30)+ylab('Frequency')
```
![篩選後的直方圖](../../../../../translated_images/zh-HK/filtered-histogram.6bf5d2bfd82533220e1bd4bc4f7d14308f43746ed66721d9ec8f460732be6674.png)
![篩選後的直方圖](../../../../../translated_images/zh-HK/filtered-histogram.6bf5d2bfd8253322.webp)
✅ 試試其他篩選條件和數據點。若要查看數據的完整分佈,移除 `['MaxBodyMass']` 篩選條件以顯示帶標籤的分佈。
@ -82,7 +82,7 @@ ggplot(data=birds_filtered_1, aes(x=MaxBodyMass, y=MaxLength) ) +
```
可以看到這兩個元素之間沿著預期軸線存在預期的相關性,並且有一個特別強的匯聚點:
![2D 圖表](../../../../../translated_images/zh-HK/2d-plot.c504786f439bd7ebceebf2465c70ca3b124103e06c7ff7214bf24e26f7aec21e.png)
![2D 圖表](../../../../../translated_images/zh-HK/2d-plot.c504786f439bd7eb.webp)
直方圖對於數值數據效果很好。如果需要查看基於文本數據的分佈該怎麼辦?
@ -114,7 +114,7 @@ ggplot(data=birds_filtered_1, aes(x = MinWingspan, fill = ConservationStatus)) +
scale_fill_manual(name="Conservation Status",values=c("red","green","blue","pink"),labels=c("Endangered","Near Threathened","Vulnerable","Least Concern"))
```
![翼展與保育狀況的對比](../../../../../translated_images/zh-HK/wingspan-conservation-collation.4024e9aa6910866aa82f0c6cb6a6b4b925bd10079e6b0ef8f92eefa5a6792f76.png)
![翼展與保育狀況的對比](../../../../../translated_images/zh-HK/wingspan-conservation-collation.4024e9aa6910866a.webp)
最小翼展與保育狀況之間似乎沒有明顯的相關性。使用這種方法測試數據集的其他元素。你也可以嘗試不同的篩選條件。你發現了任何相關性嗎?
@ -128,7 +128,7 @@ ggplot(data=birds_filtered_1, aes(x = MinWingspan, fill = ConservationStatus)) +
ggplot(data = birds_filtered_1, aes(x = MinWingspan)) +
geom_density()
```
![密度圖](../../../../../translated_images/zh-HK/density-plot.675ccf865b76c690487fb7f69420a8444a3515f03bad5482886232d4330f5c85.png)
![密度圖](../../../../../translated_images/zh-HK/density-plot.675ccf865b76c690.webp)
你可以看到這個圖表反映了之前的最小翼展數據,只是更平滑了一些。如果你想重新查看第二個圖表中那條不平滑的最大體重線,可以使用這種方法將其非常平滑地重現:
@ -136,7 +136,7 @@ ggplot(data = birds_filtered_1, aes(x = MinWingspan)) +
ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_density()
```
![體重密度](../../../../../translated_images/zh-HK/bodymass-smooth.d31ce526d82b0a1f19a073815dea28ecfbe58145ec5337e4ef7e8cdac81120b3.png)
![體重密度](../../../../../translated_images/zh-HK/bodymass-smooth.d31ce526d82b0a1f.webp)
如果你想要一條平滑但不過於平滑的線,可以編輯 `adjust` 參數:
@ -144,7 +144,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_density(adjust = 1/5)
```
![較少平滑的體重線](../../../../../translated_images/zh-HK/less-smooth-bodymass.10f4db8b683cc17d17b2d33f22405413142004467a1493d416608dafecfdee23.png)
![較少平滑的體重線](../../../../../translated_images/zh-HK/less-smooth-bodymass.10f4db8b683cc17d.webp)
✅ 閱讀此類圖表可用的參數並進行實驗!
@ -154,7 +154,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
ggplot(data=birds_filtered_1,aes(x = MaxBodyMass, fill = Order)) +
geom_density(alpha=0.5)
```
![每目體重密度](../../../../../translated_images/zh-HK/bodymass-per-order.9d2b065dd931b928c839d8cdbee63067ab1ae52218a1b90717f4bc744354f485.png)
![每目體重密度](../../../../../translated_images/zh-HK/bodymass-per-order.9d2b065dd931b928.webp)
## 🚀 挑戰

@ -84,7 +84,7 @@ pie(grouped$count,grouped$class, main="Edible?")
```
完成,一個圓餅圖展示了根據這兩類蘑菇的比例數據。正確排列標籤的順序非常重要,尤其是在這裡,因此請務必核對標籤數組的構建順序!
![圓餅圖](../../../../../translated_images/zh-HK/pie1-wb.685df063673751f4b0b82127f7a52c7f9a920192f22ae61ad28412ba9ace97bf.png)
![圓餅圖](../../../../../translated_images/zh-HK/pie1-wb.685df063673751f4.webp)
## 甜甜圈圖!
@ -119,7 +119,7 @@ library(webr)
PieDonut(habitat, aes(habitat, count=count))
```
![甜甜圈圖](../../../../../translated_images/zh-HK/donut-wb.34e6fb275da9d834c2205145e39a3de9b6878191dcdba6f7a9e85f4b520449bc.png)
![甜甜圈圖](../../../../../translated_images/zh-HK/donut-wb.34e6fb275da9d834.webp)
這段代碼使用了兩個庫——ggplot2 和 webr。使用 webr 庫的 PieDonut 函數,我們可以輕鬆創建甜甜圈圖!
@ -157,7 +157,7 @@ waffle((cap_color$count/10), rows = 7, title = "Waffle Chart")+scale_fill_manual
使用華夫圖,你可以清楚地看到這個蘑菇數據集中菌蓋顏色的比例。有趣的是,有許多綠色菌蓋的蘑菇!
![華夫圖](../../../../../translated_images/zh-HK/waffle.aaa75c5337735a6ef32ace0ffb6506ef49e5aefe870ffd72b1bb080f4843c217.png)
![華夫圖](../../../../../translated_images/zh-HK/waffle.aaa75c5337735a6e.webp)
在這節課中,你學到了三種視覺化比例的方法。首先,你需要將數據分組到分類中,然後決定哪種方式最適合展示數據——圓餅圖、甜甜圈圖或華夫圖。這些方法都很有趣,能讓用戶快速了解數據集。

@ -42,7 +42,7 @@ library(ggplot2)
ggplot(honey, aes(x = priceperlb, y = state)) +
geom_point(colour = "blue")
```
![scatterplot 1](../../../../../translated_images/zh-HK/scatter1.86b8900674d88b26dd3353a83fe604e9ab3722c4680cc40ee9beb452ff02cdea.png)
![scatterplot 1](../../../../../translated_images/zh-HK/scatter1.86b8900674d88b26.webp)
現在,使用蜂蜜色彩方案展示價格隨年份的變化。您可以通過添加 'scale_color_gradientn' 參數來顯示每年的變化:
@ -52,7 +52,7 @@ ggplot(honey, aes(x = priceperlb, y = state)) +
ggplot(honey, aes(x = priceperlb, y = state, color=year)) +
geom_point()+scale_color_gradientn(colours = colorspace::heat_hcl(7))
```
![scatterplot 2](../../../../../translated_images/zh-HK/scatter2.4d1cbc693bad20e2b563888747eb6bdf65b73ce449d903f7cd4068a78502dcff.png)
![scatterplot 2](../../../../../translated_images/zh-HK/scatter2.4d1cbc693bad20e2.webp)
使用這種色彩方案,您可以看到蜂蜜每磅價格隨年份的明顯增長趨勢。事實上,如果您查看數據中的樣本集(例如選擇亞利桑那州),您可以看到價格每年逐漸上漲,僅有少數例外:
@ -83,7 +83,7 @@ ggplot(honey, aes(x = priceperlb, y = state)) +
```
您可以看到點的大小逐漸增大。
![scatterplot 3](../../../../../translated_images/zh-HK/scatter3.722d21e6f20b3ea2e18339bb9b10d75906126715eb7d5fdc88fe74dcb6d7066a.png)
![scatterplot 3](../../../../../translated_images/zh-HK/scatter3.722d21e6f20b3ea2.webp)
這是否是一個簡單的供需問題?由於氣候變化和蜂群崩潰等因素,是否每年可供購買的蜂蜜減少,導致價格上漲?
@ -98,7 +98,7 @@ qplot(honey$year,honey$priceperlb, geom='smooth', span =0.5, xlab = "year",ylab
```
答案是的但在2003年左右有一些例外
![line chart 1](../../../../../translated_images/zh-HK/line1.299b576fbb2a59e60a59e7130030f59836891f90302be084e4e8d14da0562e2a.png)
![line chart 1](../../../../../translated_images/zh-HK/line1.299b576fbb2a59e6.webp)
問題那麼在2003年我們是否也能看到蜂蜜供應的激增如果您查看每年的總生產量呢
@ -106,7 +106,7 @@ qplot(honey$year,honey$priceperlb, geom='smooth', span =0.5, xlab = "year",ylab
qplot(honey$year,honey$totalprod, geom='smooth', span =0.5, xlab = "year",ylab = "totalprod")
```
![line chart 2](../../../../../translated_images/zh-HK/line2.3b18fcda7176ceba5b6689eaaabb817d49c965e986f11cac1ae3f424030c34d8.png)
![line chart 2](../../../../../translated_images/zh-HK/line2.3b18fcda7176ceba.webp)
答案:並不完全。如果您查看總生產量,實際上在那一年似乎有所增加,儘管總體而言蜂蜜的生產量在這些年中呈下降趨勢。
@ -126,7 +126,7 @@ ggplot(honey, aes(x=yieldpercol, y = numcol,group = 1)) +
```
在此視覺化中您可以比較每群產量和蜂群數量每年每州的變化並將列數設置為3
![facet grid](../../../../../translated_images/zh-HK/facet.491ad90d61c2a7cc69b50c929f80786c749e38217ccedbf1e22ed8909b65987c.png)
![facet grid](../../../../../translated_images/zh-HK/facet.491ad90d61c2a7cc.webp)
對於此數據集,關於蜂群數量和每群產量每年每州的變化,並未有特別突出的地方。是否有其他方式可以找到這兩個變量之間的相關性?
@ -143,7 +143,7 @@ plot(honey$year, honey$yieldpercol, pch = 17, col = 3,
axis(side = 4, at = pretty(range(y2)))
mtext("colony yield", side = 4, line = 3)
```
![superimposed plots](../../../../../translated_images/zh-HK/dual-line.fc4665f360a54018d7df9bc6abcc26460112e17dcbda18d3b9ae6109b32b36c3.png)
![superimposed plots](../../../../../translated_images/zh-HK/dual-line.fc4665f360a54018.webp)
雖然在2003年並未有明顯的異常但這讓我們可以以一個稍微樂觀的結論結束本課儘管蜂群數量總體上在下降但蜂群數量正在穩定即使每群產量在減少。

@ -38,25 +38,25 @@
即使數據科學家謹慎地為正確的數據選擇了合適的圖表,仍然有許多方法可以以誤導的方式展示數據,通常是為了證明某個觀點,卻犧牲了數據的真實性。有許多誤導性圖表和信息圖的例子!
[![Alberto Cairo 的《How Charts Lie》](../../../../../translated_images/zh-HK/tornado.2880ffc7f135f82b5e5328624799010abefd1080ae4b7ecacbdc7d792f1d8849.png)](https://www.youtube.com/watch?v=oX74Nge8Wkw "How charts lie")
[![Alberto Cairo 的《How Charts Lie》](../../../../../translated_images/zh-HK/tornado.2880ffc7f135f82b.webp)](https://www.youtube.com/watch?v=oX74Nge8Wkw "How charts lie")
> 🎥 點擊上方圖片觀看關於誤導性圖表的會議演講
這張圖表反轉了 X 軸,根據日期顯示了與事實相反的內容:
![糟糕的圖表 1](../../../../../translated_images/zh-HK/bad-chart-1.596bc93425a8ac301a28b8361f59a970276e7b961658ce849886aa1fed427341.png)
![糟糕的圖表 1](../../../../../translated_images/zh-HK/bad-chart-1.596bc93425a8ac30.webp)
[這張圖表](https://media.firstcoastnews.com/assets/WTLV/images/170ae16f-4643-438f-b689-50d66ca6a8d8/170ae16f-4643-438f-b689-50d66ca6a8d8_1140x641.jpg) 更加誤導,因為視覺上吸引人注意的是右側,讓人得出隨時間推移各縣的 COVID 病例數下降的結論。事實上,如果仔細查看日期,你會發現它們被重新排列以製造出誤導性的下降趨勢。
![糟糕的圖表 2](../../../../../translated_images/zh-HK/bad-chart-2.62edf4d2f30f4e519f5ef50c07ce686e27b0196a364febf9a4d98eecd21f9f60.jpg)
![糟糕的圖表 2](../../../../../translated_images/zh-HK/bad-chart-2.62edf4d2f30f4e51.webp)
這個臭名昭著的例子使用顏色和反轉的 Y 軸來誤導:原本應該得出槍支友好立法通過後槍支死亡率激增的結論,卻讓人誤以為情況正好相反:
![糟糕的圖表 3](../../../../../translated_images/zh-HK/bad-chart-3.e201e2e915a230bc2cde289110604ec9abeb89be510bd82665bebc1228258972.jpg)
![糟糕的圖表 3](../../../../../translated_images/zh-HK/bad-chart-3.e201e2e915a230bc.webp)
這張奇怪的圖表展示了比例如何被操控,效果令人捧腹:
![糟糕的圖表 4](../../../../../translated_images/zh-HK/bad-chart-4.8872b2b881ffa96c3e0db10eb6aed7793efae2cac382c53932794260f7bfff07.jpg)
![糟糕的圖表 4](../../../../../translated_images/zh-HK/bad-chart-4.8872b2b881ffa96c.webp)
比較不可比的事物是另一種不正當的手段。有一個[精彩的網站](https://tylervigen.com/spurious-correlations)專門展示「虛假的相關性」,例如顯示緬因州的離婚率與人造奶油的消耗量之間的「事實」相關性。一個 Reddit 群組也收集了[糟糕的數據使用](https://www.reddit.com/r/dataisugly/top/?t=all)。
@ -91,13 +91,13 @@
如果你的數據在 X 軸上是文本且冗長,可以將文本角度調整以提高可讀性。[plot3D](https://cran.r-project.org/web/packages/plot3D/index.html) 提供了 3D 繪圖功能,如果你的數據支持它,可以使用它來生成更高級的數據視覺化。
![3D 圖表](../../../../../translated_images/zh-HK/3d.db1734c151eee87d924989306a00e23f8cddac6a0aab122852ece220e9448def.png)
![3D 圖表](../../../../../translated_images/zh-HK/3d.db1734c151eee87d.webp)
## 動畫和 3D 圖表展示
如今一些最好的數據視覺化是動畫化的。Shirley Wu 使用 D3 創作了令人驚嘆的作品,例如「[電影之花](http://bl.ocks.org/sxywu/raw/d612c6c653fb8b4d7ff3d422be164a5d/)」每朵花都是一部電影的視覺化。另一個例子是《衛報》的「Bussed Out」這是一個結合 Greensock 和 D3 的視覺化與滾動敘事文章格式的互動體驗,展示了紐約市如何通過將無家可歸者送出城市來處理其無家可歸問題。
![Bussed Out](../../../../../translated_images/zh-HK/busing.8157cf1bc89a3f65052d362a78c72f964982ceb9dcacbe44480e35909c3dce62.png)
![Bussed Out](../../../../../translated_images/zh-HK/busing.8157cf1bc89a3f65.webp)
> 「Bussed Out: How America Moves its Homeless」來自[衛報](https://www.theguardian.com/us-news/ng-interactive/2017/dec/20/bussed-out-america-moves-homeless-people-country-study)。視覺化由 Nadieh Bremer 和 Shirley Wu 創作
@ -107,7 +107,7 @@
你將完成一個網頁應用,展示這個社交網絡的動畫視圖。它使用了一個庫來創建[網絡視覺化](https://github.com/emiliorizzo/vue-d3-network),基於 Vue.js 和 D3。當應用運行時你可以在屏幕上拖動節點重新排列數據。
![危險關係](../../../../../translated_images/zh-HK/liaisons.90ce7360bcf8476558f700bbbaf198ad697d5b5cb2829ba141a89c0add7c6ecd.png)
![危險關係](../../../../../translated_images/zh-HK/liaisons.90ce7360bcf84765.webp)
## 項目:使用 D3.js 構建一個展示網絡的圖表

@ -1,6 +1,6 @@
# 視覺化
![一隻蜜蜂停在薰衣草花上](../../../translated_images/zh-HK/bee.0aa1d91132b12e3a8994b9ca12816d05ce1642010d9b8be37f8d37365ba845cf.jpg)
![一隻蜜蜂停在薰衣草花上](../../../translated_images/zh-HK/bee.0aa1d91132b12e3a.webp)
> 照片由 <a href="https://unsplash.com/@jenna2980?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Jenna Lee</a> 提供,來源於 <a href="https://unsplash.com/s/photos/bees-in-a-meadow?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
視覺化數據是數據科學家最重要的任務之一。圖片勝過千言萬語,視覺化可以幫助你識別數據中的各種有趣部分,例如峰值、異常值、分組、趨勢等等,這些都能幫助你理解數據背後的故事。

@ -16,7 +16,7 @@
本課程將重點介紹生命周期中的三個部分:捕獲、處理和維護。
![數據科學生命周期圖](../../../../translated_images/zh-HK/data-science-lifecycle.a1e362637503c4fb0cd5e859d7552edcdb4aa629a279727008baa121f2d33f32.jpg)
![數據科學生命周期圖](../../../../translated_images/zh-HK/data-science-lifecycle.a1e362637503c4fb.webp)
> 圖片來源:[Berkeley School of Information](https://ischoolonline.berkeley.edu/data-science/what-is-data-science/)
## 捕獲
@ -89,7 +89,7 @@
|團隊數據科學過程 (TDSP)|跨行業數據挖掘標準過程 (CRISP-DM)|
|--|--|
|![團隊數據科學生命周期](../../../../translated_images/zh-HK/tdsp-lifecycle2.e19029d598e2e73d5ef8a4b98837d688ec6044fe332c905d4dbb69eb6d5c1d96.png) | ![數據科學過程聯盟圖片](../../../../translated_images/zh-HK/CRISP-DM.8bad2b4c66e62aa75278009e38e3e99902c73b0a6f63fd605a67c687a536698c.png) |
|![團隊數據科學生命周期](../../../../translated_images/zh-HK/tdsp-lifecycle2.e19029d598e2e73d.webp) | ![數據科學過程聯盟圖片](../../../../translated_images/zh-HK/CRISP-DM.8bad2b4c66e62aa7.webp) |
| 圖片來源:[Microsoft](https://docs.microsoft.comazure/architecture/data-science-process/lifecycle) | 圖片來源:[Data Science Process Alliance](https://www.datascience-pm.com/crisp-dm-2/) |
## [課後測驗](https://ff-quizzes.netlify.app/en/ds/quiz/27)

@ -1,6 +1,6 @@
# 數據科學生命周期
![communication](../../../translated_images/zh-HK/communication.06d8e2a88d30d168d661ad9f9f0a4f947ebff3719719cfdaf9ed00a406a01ead.jpg)
![communication](../../../translated_images/zh-HK/communication.06d8e2a88d30d168.webp)
> 圖片由 <a href="https://unsplash.com/@headwayio?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Headway</a> 提供,來自 <a href="https://unsplash.com/s/photos/communication?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,你將探索數據科學生命周期的一些方面,包括數據的分析和溝通。

@ -1,12 +1,12 @@
# 雲端中的數據科學
![cloud-picture](../../../translated_images/zh-HK/cloud-picture.f5526de3c6c6387b2d656ba94f019b3352e5e3854a78440e4fb00c93e2dea675.jpg)
![cloud-picture](../../../translated_images/zh-HK/cloud-picture.f5526de3c6c6387b.webp)
> 圖片來源:[Jelleke Vanooteghem](https://unsplash.com/@ilumire) 來自 [Unsplash](https://unsplash.com/s/photos/cloud?orientation=landscape)
當涉及到使用大數據進行數據科學時,雲端可以成為改變遊戲規則的關鍵。在接下來的三節課中,我們將了解什麼是雲端以及為什麼它非常有用。我們還將探索一個心臟衰竭數據集,並建立一個模型來幫助評估某人發生心臟衰竭的可能性。我們將利用雲端的強大功能來訓練、部署和以兩種不同的方式使用模型。一種方式是僅使用用戶界面,以低代碼/無代碼的方式進行;另一種方式是使用 Azure 機器學習軟件開發工具包 (Azure ML SDK)。
![project-schema](../../../translated_images/zh-HK/project-schema.420e56d495624541eaecf2b737f138c86fb7d8162bb1c0bf8783c350872ffc4d.png)
![project-schema](../../../translated_images/zh-HK/project-schema.420e56d495624541.webp)
### 主題

@ -32,7 +32,7 @@
* [數據科學在醫療保健中的應用](https://data-flair.training/blogs/data-science-in-healthcare/) - 強調應用包括醫學影像(例如 MRI、X光、CT掃描、基因組學DNA測序、藥物開發風險評估、成功預測、預測分析患者護理和供應物流、疾病追蹤和預防等。
![數據科學在現實世界中的應用](../../../../translated_images/zh-HK/data-science-applications.4e5019cd8790ebac2277ff5f08af386f8727cac5d30f77727c7090677e6adb9c.png) 圖片來源:[Data Flair: 6 Amazing Data Science Applications ](https://data-flair.training/blogs/data-science-applications/)
![數據科學在現實世界中的應用](../../../../translated_images/zh-HK/data-science-applications.4e5019cd8790ebac.webp) 圖片來源:[Data Flair: 6 Amazing Data Science Applications ](https://data-flair.training/blogs/data-science-applications/)
該圖展示了其他領域和應用數據科學技術的例子。想探索更多應用?查看下面的[回顧與自學](../../../../6-Data-Science-In-Wild/20-Real-World-Examples)部分。

@ -13,7 +13,7 @@ Explorer界面如下圖所示允許你選擇一個數據集從提供的
2. 探索數據集[目錄](https://planetarycomputer.microsoft.com/catalog)——了解每個數據集的用途。
3. 使用Explorer——選擇一個感興趣的數據集選擇相關的查詢和渲染選項。
![行星電腦Explorer](../../../../translated_images/zh-HK/planetary-computer-explorer.c1e95a9b053167d64e2e8e4347cfb689e47e2037c33103fc1bbea1a149d4f85b.png)
![行星電腦Explorer](../../../../translated_images/zh-HK/planetary-computer-explorer.c1e95a9b053167d6.webp)
`你的任務:`
現在,研究瀏覽器中渲染的可視化,並回答以下問題:

@ -17,231 +17,241 @@
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
Azure Cloud Advocates at Microsoft 很高興提供一個為期 10 週,共 20 課的資料科學課程。每一課都包含課前和課後測驗、完成課程的書面指引、解決方案以及作業。我們以項目為基礎的教學法讓你在實作中學習,是新技能得以紮根的有效方法。
Microsoft 的 Azure Cloud Advocates 很高興提供一個為期 10 週、共 20 課的數據科學課程。每課包括課前和課後測驗、完成課程的書面指引、解決方案和作業。我們的專案導向教學法讓你在建立項目的同時學習,是新技能學習的有效方法。
**衷心感謝我們的作者:** [Jasmine Greenaway](https://www.twitter.com/paladique), [Dmitry Soshnikov](http://soshnikov.com), [Nitya Narasimhan](https://twitter.com/nitya), [Jalen McGee](https://twitter.com/JalenMcG), [Jen Looper](https://twitter.com/jenlooper), [Maud Levy](https://twitter.com/maudstweets), [Tiffany Souterre](https://twitter.com/TiffanySouterre), [Christopher Harrison](https://www.twitter.com/geektrainer).
**衷心感謝我們的作者:** [Jasmine Greenaway](https://www.twitter.com/paladique), [Dmitry Soshnikov](http://soshnikov.com), [Nitya Narasimhan](https://twitter.com/nitya), [Jalen McGee](https://twitter.com/JalenMcG), [Jen Looper](https://twitter.com/jenlooper), [Maud Levy](https://twitter.com/maudstweets), [Tiffany Souterre](https://twitter.com/TiffanySouterre), [Christopher Harrison](https://www.twitter.com/geektrainer)
**🙏 特別感謝 🙏 我們的 [Microsoft Student Ambassador](https://studentambassadors.microsoft.com/) 作者、審核者及內容貢獻者,** 特別是 Aaryan Arora, [Aditya Garg](https://github.com/AdityaGarg00), [Alondra Sanchez](https://www.linkedin.com/in/alondra-sanchez-molina/), [Ankita Singh](https://www.linkedin.com/in/ankitasingh007), [Anupam Mishra](https://www.linkedin.com/in/anupam--mishra/), [Arpita Das](https://www.linkedin.com/in/arpitadas01/), ChhailBihari Dubey, [Dibri Nsofor](https://www.linkedin.com/in/dibrinsofor), [Dishita Bhasin](https://www.linkedin.com/in/dishita-bhasin-7065281bb), [Majd Safi](https://www.linkedin.com/in/majd-s/), [Max Blum](https://www.linkedin.com/in/max-blum-6036a1186/), [Miguel Correa](https://www.linkedin.com/in/miguelmque/), [Mohamma Iftekher (Iftu) Ebne Jalal](https://twitter.com/iftu119), [Nawrin Tabassum](https://www.linkedin.com/in/nawrin-tabassum), [Raymond Wangsa Putra](https://www.linkedin.com/in/raymond-wp/), [Rohit Yadav](https://www.linkedin.com/in/rty2423), Samridhi Sharma, [Sanya Sinha](https://www.linkedin.com/mwlite/in/sanya-sinha-13aab1200),
**🙏 特別感謝 🙏 我們的 [Microsoft 學生大使](https://studentambassadors.microsoft.com/) 作者、審稿人及內容貢獻者,** 尤其是 Aaryan Arora, [Aditya Garg](https://github.com/AdityaGarg00), [Alondra Sanchez](https://www.linkedin.com/in/alondra-sanchez-molina/), [Ankita Singh](https://www.linkedin.com/in/ankitasingh007), [Anupam Mishra](https://www.linkedin.com/in/anupam--mishra/), [Arpita Das](https://www.linkedin.com/in/arpitadas01/), ChhailBihari Dubey, [Dibri Nsofor](https://www.linkedin.com/in/dibrinsofor), [Dishita Bhasin](https://www.linkedin.com/in/dishita-bhasin-7065281bb), [Majd Safi](https://www.linkedin.com/in/majd-s/), [Max Blum](https://www.linkedin.com/in/max-blum-6036a1186/), [Miguel Correa](https://www.linkedin.com/in/miguelmque/), [Mohamma Iftekher (Iftu) Ebne Jalal](https://twitter.com/iftu119), [Nawrin Tabassum](https://www.linkedin.com/in/nawrin-tabassum), [Raymond Wangsa Putra](https://www.linkedin.com/in/raymond-wp/), [Rohit Yadav](https://www.linkedin.com/in/rty2423), Samridhi Sharma, [Sanya Sinha](https://www.linkedin.com/mwlite/in/sanya-sinha-13aab1200),
[Sheena Narula](https://www.linkedin.com/in/sheena-narua-n/), [Tauqeer Ahmad](https://www.linkedin.com/in/tauqeerahmad5201/), Yogendrasingh Pawar , [Vidushi Gupta](https://www.linkedin.com/in/vidushi-gupta07/), [Jasleen Sondhi](https://www.linkedin.com/in/jasleen-sondhi/)
|![Sketchnote by @sketchthedocs https://sketchthedocs.dev](../../translated_images/zh-HK/00-Title.8af36cd35da1ac55.webp)|
|:---:|
| Data Science For Beginners - _手繪筆記由 [@nitya](https://twitter.com/nitya) 製作_ |
| 數據科學初學者 - _Sketchnote 由 [@nitya](https://twitter.com/nitya)_ 製作 |
### 🌐 多語言支援
#### 透過 GitHub Action 自動化並持續更新支援
#### 透過 GitHub Action 支援(自動且持續更新)
<!-- CO-OP TRANSLATOR LANGUAGES TABLE START -->
[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh-CN/README.md) | [Chinese (Traditional, Hong Kong)](./README.md) | [Chinese (Traditional, Macau)](../zh-MO/README.md) | [Chinese (Traditional, Taiwan)](../zh-TW/README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Kannada](../kn/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Malayalam](../ml/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Nigerian Pidgin](../pcm/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../pt-BR/README.md) | [Portuguese (Portugal)](../pt-PT/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Telugu](../te/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md)
> **喜歡本機複製?**
> 本儲存庫包含 50 多種語言翻譯,會大幅增加下載大小。要不帶翻譯複製,請使用稀疏檢出:
> **想本地克隆?**
>
> 此儲存庫包含超過 50 種語言的翻譯,會顯著增加下載大小。若想不包含翻譯檔案進行克隆,可使用稀疏檢出:
>
> **Bash / macOS / Linux:**
> ```bash
> git clone --filter=blob:none --sparse https://github.com/microsoft/Data-Science-For-Beginners.git
> cd Data-Science-For-Beginners
> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'
> ```
> 可讓你快速下載完成課程所需的所有內容。
>
> **CMD (Windows):**
> ```cmd
> git clone --filter=blob:none --sparse https://github.com/microsoft/Data-Science-For-Beginners.git
> cd Data-Science-For-Beginners
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> 這樣你將能迅速下載並取得所有學習資源。
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**如果你希望支援更多翻譯語言,清單請見 [這裡](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
**若希望支持更多翻譯語言,可參考列表 [here](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
#### 加入我們的社群
#### 加入我們的社群
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
我們有一個 Discord AI 學習系列活動,從 2025 年 9 月 18 日至 30 日開放,了解更多並加入我們:[Learn with AI Series](https://aka.ms/learnwithai/discord)。你會獲得使用 GitHub Copilot 於資料科學上的技巧和秘訣。
我們持續進行 Discord AI 學習系列,詳細資訊及參加請至 [Learn with AI Series](https://aka.ms/learnwithai/discord),活動期間為 2025 年 9 月 18 日至 30 日。你將學習如何使用 GitHub Copilot 來輔助數據科學技術
![Learn with AI series](../../translated_images/zh-HK/1.2b28cdc6205e26fe.webp)
# 你是學生嗎?
開始使用以下資源
可使用以下資源開始
- [學生中心頁面](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-77958-bethanycheum) 在此頁面中,你可以找到初學者資源、學生套裝,甚至獲得免費證書憑證的方法。這是一個你應該加入書籤並不時查看的頁面,我們會至少每月更新內容。
- [Microsoft Learn Student Ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-77958-bethanycheum) 加入學生大使全球社群,或許這是你進入 Microsoft 的途徑。
- [學生中心頁面](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-77958-bethanycheum) 此頁提供初學者資源、學生套件,甚至可以取得免費證書券。這頁值得加入書籤,並不時回來查看,我們至少每月更新內容。
- [Microsoft Learn 學生大使](https://studentambassadors.microsoft.com?WT.mc_id=academic-77958-bethanycheum) 加入全球學生大使社群,這可能是你進入 Microsoft 的途徑。
# 開始使用
## 📚 文件
- **[安裝指南](INSTALLATION.md)** - 針對初學者的逐步設置說明
- **[使用說明](USAGE.md)** - 範例和常見工作流程
- **[疑難排解](TROUBLESHOOTING.md)** - 常見問題解決方案
- **[貢獻指南](CONTRIBUTING.md)** - 如何參與此專案貢獻
- **[給老師們](for-teachers.md)** - 教學指導及課堂資源
- **[安裝指南](INSTALLATION.md)** — 初學者逐步套件設置說明
- **[使用指南](USAGE.md)** — 範例與常見工作流程
- **[疑難排解](TROUBLESHOOTING.md)** 常見問題解決方案
- **[貢獻指南](CONTRIBUTING.md)** — 如何貢獻此專案
- **[教師資源](for-teachers.md)** — 教學指導與課堂資源
## 👨‍🎓 給學生們
> **完全初學者**對資料科學不熟悉?從我們的[初學者友好範例](examples/README.md)開始!這些簡單且豐富註解的範例將幫助你在深入整個課程前,先建立基礎了解
> **[學生](https://aka.ms/student-page)**:若要自行使用本課程,請 fork 整個倉庫並自己完成練習,從課前小測驗開始。接著閱讀課程內容並完成其餘活動。嘗試透過理解課程去自行建立專案,而非直接複製解決方案程式碼;但你可以在每個專案導向課程的 /solutions 資料夾中找到完整程式碼。另一個方法是與朋友組成讀書會一起學習。我們建議進階學習可參考 [Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/qprpajyoy3x0g7?WT.mc_id=academic-77958-bethanycheum)。
## 👨‍🎓 學生專區
> **完全初學者**剛接觸數據科學?先看我們的[初學者範例](examples/README.md)!這些簡單且有詳盡註解的範例會幫助你了解基礎,然後再深入整個課程
> **[學生](https://aka.ms/student-page)**:若打算自行使用本課程,建議將整個倉庫叉 fork從課前測驗開始完成練習接著閱讀教學內容及完成其餘活動。嘗試用理解的方式來建立專案而非單純複製解決方案代碼。解決方案代碼都在每個專案導向課程的 /solutions 資料夾。你也可以和朋友組成讀書會一起學習。若想進一步學習,推薦參考 [Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/qprpajyoy3x0g7?WT.mc_id=academic-77958-bethanycheum)。
**快速開始:**
1. 查看 [安裝指南](INSTALLATION.md) 設置環境
2. 閱讀 [使用說明](USAGE.md) 學習如何操作課程
3. 從第一課開始依序學習
4. 加入我們的 [Discord 社群](https://aka.ms/ds4beginners/discord) 取得支援
1. 查看[安裝指南](INSTALLATION.md),設置你的環境
2. 閱讀[使用指南](USAGE.md),學習如何使用課程
3. 從第 1 課開始,依序學習
4. 加入我們的[Discord 社群](https://aka.ms/ds4beginners/discord)尋求協助
## 👩‍🏫 給老師們
## 👩‍🏫 教師專區
> **教師們**:我們已[包含一些建議](for-teachers.md)關於如何使用此課程。非常歡迎您在[討論區](https://github.com/microsoft/Data-Science-For-Beginners/discussions)提供您的意見反饋!
> **老師們**:我們[提供一些建議](for-teachers.md) 如何使用本課程。樂意收到你在[討論區](https://github.com/microsoft/Data-Science-For-Beginners/discussions)的回饋!
## 介紹團隊
## 團隊介紹
[![宣傳影片](../../ds-for-beginners.gif)](https://youtu.be/8mzavjQSMM4 "宣傳影片")
[![推廣影片](../../ds-for-beginners.gif)](https://youtu.be/8mzavjQSMM4 "推廣影片")
**Gif 來源** [Mohit Jaisal](https://www.linkedin.com/in/mohitjaisal)
**動圖來源** [Mohit Jaisal](https://www.linkedin.com/in/mohitjaisal)
> 🎥 點擊上方圖片觀看有關專案及創建團隊的影片!
> 🎥 點擊上方圖片觀看有關此專案及創作者的影片!
## 教學理念
## 教學
我們在建構此課程時選擇了兩個教學原則:確保課程以專案為基礎,並包含頻繁的測驗。完成本系列課程後,學生將學會資料科學的基本原理,包括倫理觀念、資料準備、不同資料處理方式、資料視覺化、資料分析、資料科學的實際應用案例等。
我們在設計此課程時選擇了兩項教學原則:確保其以專案為導向,並包含頻繁的測驗。在完成這個系列課程後,學生將學會資料科學的基本原則,包括倫理概念、資料準備、資料操作的不同方式、資料視覺化、資料分析、資料科學的實際應用案例等。
此外,課前的低壓力測驗設定學習者學習主題的目標,而課後第二次測驗則確保進一步的記憶鞏固。本課程設計彈性且有趣,可以全部或部分學習。專案從小型開始,隨著 10 週週期結束而逐漸變複雜
此外,每堂課前的低壓測驗有助於學生專注於學習該主題而課後的第二個測驗則確保進一步的知識鞏固。此課程設計靈活且有趣可整體或部分學習。專案由簡至繁在10週的課程結束時逐漸具挑戰性
> 請查閱我們的[行為準則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)、[翻譯指引](TRANSLATIONS.md)。歡迎您的建設性回饋!
> 查看我們的[行為守則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)和[翻譯指南](TRANSLATIONS.md)。歡迎您的建設性回饋!
## 每堂課包含:
- 可選擇的手繪筆記
- 可選擇的補充影片
- 課前熱身測驗
- 選擇性手繪筆記
- 選擇性補充影片
- 課前熱身測驗
- 書面課程內容
- 專案課程包含逐步建置指南
- 知識檢測
- 專案導向課程的步驟指引
- 知識確認
- 挑戰題
- 補充閱讀
- 補充閱讀材料
- 作業
- [課後測驗](https://ff-quizzes.netlify.app/en/)
> **關於測驗的一點說明**:所有測驗均包含在 Quiz-App 資料夾中,共 40 個測驗,每個測驗包含三個問題。它們在課程中有連結,但也可本地執行或部署至 Azure請參考 `quiz-app` 資料夾內的說明。測驗正逐步本地化
> **關於測驗提醒**:所有測驗均收錄於 Quiz-App 資料夾總計40組每組包含三題。這些測驗在課程中有連結但也可以在本地運行或部署至 Azure請參考 `quiz-app` 資料夾內的說明。測驗正逐步本地化。
## 🎓 初學者友善範例
**資料科學新手?** 我們製作了特別的 [範例目錄](examples/README.md),有簡易且註解詳盡的程式碼幫助您入門:
**資料科學新手?** 我們製作了一個特別的[範例目錄](examples/README.md),包含簡單且具詳細註解的程式碼,幫助您入門:
- 🌟 **Hello World** - 的第一個資料科學程式
- 📂 **載入資料** - 學習讀取及探索資料集
- 📊 **簡單分析** - 計算統計數據與尋找趨勢
- 📈 **本視覺化** - 製作圖表與圖形
- 🔬 **際專案** - 從頭到尾完成的工作流程
- 🌟 **Hello World** - 的第一個資料科學程式
- 📂 **載入資料** - 學習閱讀與探索資料集
- 📊 **簡單分析** - 計算統計數據並找出模式
- 📈 **礎視覺化** - 製作圖表和圖形
- 🔬 **務專案** - 從頭到尾完整工作流程
每個範例包含詳細註解說每步非常適合初學者!
每個範例包含詳細註解,解說每步,適合完全初學者!
👉 **[從範例開始](examples/README.md)** 👈
👉 **[從範例開始學習](examples/README.md)** 👈
## 課程內容
## 課程列表
|![ @sketchthedocs https://sketchthedocs.dev 繪製的手繪筆記](../../translated_images/zh-HK/00-Roadmap.4905d6567dff4753.webp)|
|![ @sketchthedocs 繪製的手繪筆記 https://sketchthedocs.dev](../../translated_images/zh-HK/00-Roadmap.4905d6567dff4753.webp)|
|:---:|
| 初學者資料科學路線圖 - _手繪筆記作者 [@nitya](https://twitter.com/nitya)_ |
| 資料科學入門路線圖 - _手繪筆記由 [@nitya](https://twitter.com/nitya) 提供_ |
| 課程編號 | 主題 | 課程群組 | 學習目標 | 連結課程 | 作者 |
| :-------: | :---------------------------------------: | :-------------------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :-------------------------------------------------------: | :----: |
| 01 | 定義資料科學 | [介紹](1-Introduction/README.md) | 了解資料科學的基本概念及其與人工智能、機器學習和大數據的關係。 | [課程](1-Introduction/01-defining-data-science/README.md) [影片](https://youtu.be/beZ7Mb_oz9I) | [Dmitry](http://soshnikov.com) |
| 02 | 資料科學倫理 | [介紹](1-Introduction/README.md) | 資料倫理概念、挑戰與架。 | [課程](1-Introduction/02-ethics/README.md) | [Nitya](https://twitter.com/nitya) |
| 03 | 定義資料 | [介紹](1-Introduction/README.md) | 資料如何分類及其常見來源。 | [課程](1-Introduction/03-defining-data/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 04 | 統計與機率導論 | [介紹](1-Introduction/README.md) | 使用數學方法機率與統計來理解資料。 | [課程](1-Introduction/04-stats-and-probability/README.md) [影片](https://youtu.be/Z5Zy85g4Yjw) | [Dmitry](http://soshnikov.com) |
| 05 | 處理關聯資料 | [資料操作](2-Working-With-Data/README.md) | 介紹關聯資料及使用結構化查詢語言SQL讀作“see-quell”探索與分析關聯資料的基礎。 | [課程](2-Working-With-Data/05-relational-databases/README.md) | [Christopher](https://www.twitter.com/geektrainer) | | |
| 06 | 處理 NoSQL 資料 | [資料操作](2-Working-With-Data/README.md) | 介紹非關聯資料、其各種類型及探索與分析文件資料庫的基礎。 | [課程](2-Working-With-Data/06-non-relational/README.md) | [Jasmine](https://twitter.com/paladique)|
| 07 | 使用 Python | [資料操作](2-Working-With-Data/README.md) | 使用 Python 及 Pandas 等函式庫進行資料探索的基礎。建議具備 Python 程式設計基礎。 | [課程](2-Working-With-Data/07-python/README.md) [影片](https://youtu.be/dZjWOGbsN4Y) | [Dmitry](http://soshnikov.com) |
| 08 | 資料準備 | [資料操作](2-Working-With-Data/README.md) | 清理與轉換資料的技巧,以處理缺失、不準確或不完整資料的挑戰。 | [課程](2-Working-With-Data/08-data-preparation/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| :-----------: | :----------------------------------------: | :--------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------: | :----: |
| 01 | 定義資料科學 | [介紹](1-Introduction/README.md) | 理解資料科學背後的基本概念及其與人工智能、機器學習和大數據的關聯。 | [課程](1-Introduction/01-defining-data-science/README.md) [影片](https://youtu.be/beZ7Mb_oz9I) | [Dmitry](http://soshnikov.com) |
| 02 | 資料科學倫理 | [介紹](1-Introduction/README.md) | 資料倫理概念、挑戰與架。 | [課程](1-Introduction/02-ethics/README.md) | [Nitya](https://twitter.com/nitya) |
| 03 | 定義資料 | [介紹](1-Introduction/README.md) | 資料的分類方式及其常見來源。 | [課程](1-Introduction/03-defining-data/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 04 | 統計與機率入門 | [介紹](1-Introduction/README.md) | 運用機率與統計的數學技巧來理解資料。 | [課程](1-Introduction/04-stats-and-probability/README.md) [影片](https://youtu.be/Z5Zy85g4Yjw) | [Dmitry](http://soshnikov.com) |
| 05 | 操作關聯資料 | [操作資料](2-Working-With-Data/README.md) | 關聯資料介紹以及使用結構化查詢語言SQL探索和分析關聯資料的基礎。 | [課程](2-Working-With-Data/05-relational-databases/README.md) | [Christopher](https://www.twitter.com/geektrainer) | | |
| 06 | 操作 NoSQL 資料 | [操作資料](2-Working-With-Data/README.md) | 非關聯資料介紹、各種類型以及探索和分析文件資料庫的基礎。 | [課程](2-Working-With-Data/06-non-relational/README.md) | [Jasmine](https://twitter.com/paladique)|
| 07 | 使用 Python | [操作資料](2-Working-With-Data/README.md) | 使用 Pandas 等庫進行資料探索的 Python 基礎。建議具備 Python 程式基礎知識。 | [課程](2-Working-With-Data/07-python/README.md) [影片](https://youtu.be/dZjWOGbsN4Y) | [Dmitry](http://soshnikov.com) |
| 08 | 資料準備 | [操作資料](2-Working-With-Data/README.md) | 清理及轉換資料的技巧,以應對資料缺失、不準確或不完整等挑戰。 | [課程](2-Working-With-Data/08-data-preparation/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 09 | 數量視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 學習使用 Matplotlib 對鳥類資料進行視覺化 🦆 | [課程](3-Data-Visualization/09-visualization-quantities/README.md) | [Jen](https://twitter.com/jenlooper) |
| 10 | 分布視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化區間內的觀察值與趨勢。 | [課程](3-Data-Visualization/10-visualization-distributions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 10 | 資料分布視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化觀察值和趨勢於特定區間內。 | [課程](3-Data-Visualization/10-visualization-distributions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 11 | 比例視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化離散及分組百分比。 | [課程](3-Data-Visualization/11-visualization-proportions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 12 | 關係視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化資料集及其變數之間的連結與相關性。 | [課程](3-Data-Visualization/12-visualization-relationships/README.md) | [Jen](https://twitter.com/jenlooper) |
| 13 | 有意義的視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 製作有效解決問題與提供洞察的有價值視覺化技巧與指引。 | [課程](3-Data-Visualization/13-meaningful-visualizations/README.md) | [Jen](https://twitter.com/jenlooper) |
| 14 | 資料科學生命週期導論 | [生命週期](4-Data-Science-Lifecycle/README.md) | 介紹資料科學生命週期及其第一步驟——取得與擷取資料。 | [課程](4-Data-Science-Lifecycle/14-Introduction/README.md) | [Jasmine](https://twitter.com/paladique) |
| 15 | 分析 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期中專注於分析資料的階段。 | [課程](4-Data-Science-Lifecycle/15-analyzing/README.md) | [Jasmine](https://twitter.com/paladique) | | |
| 16 | 溝通 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期中聚焦於將資料洞察以決策者易於理解的方式呈現的階段。 | [課程](4-Data-Science-Lifecycle/16-communication/README.md) | [Jalen](https://twitter.com/JalenMcG) | | |
| 17 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 這系列課程介紹雲端資料科學及其優勢。 | [課程](5-Data-Science-In-Cloud/17-Introduction/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 18 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用低代碼工具訓練模型。 |[課程](5-Data-Science-In-Cloud/18-Low-Code/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 19 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用 Azure Machine Learning Studio 部署模型。 | [課程](5-Data-Science-In-Cloud/19-Azure/README.md)| [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 20 | 實務資料科學 | [務應用](6-Data-Science-In-Wild/README.md) | 真實世界中的資料科學專案。 | [課程](6-Data-Science-In-Wild/20-Real-World-Examples/README.md) | [Nitya](https://twitter.com/nitya) |
| 12 | 關係視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化資料集及其變數間的聯繫和相關性。 | [課程](3-Data-Visualization/12-visualization-relationships/README.md) | [Jen](https://twitter.com/jenlooper) |
| 13 | 有意義的視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 製作有效解決問題和洞察的有價值視覺化的技巧與指引。 | [課程](3-Data-Visualization/13-meaningful-visualizations/README.md) | [Jen](https://twitter.com/jenlooper) |
| 14 | 資料科學生命週期介紹 | [生命週期](4-Data-Science-Lifecycle/README.md) | 介紹資料科學生命週期及其第一步:取得及抽取資料。 | [課程](4-Data-Science-Lifecycle/14-Introduction/README.md) | [Jasmine](https://twitter.com/paladique) |
| 15 | 分析 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期中專注於資料分析的階段。 | [課程](4-Data-Science-Lifecycle/15-analyzing/README.md) | [Jasmine](https://twitter.com/paladique) | | |
| 16 | 溝通 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期中著重於以便決策者理解的方式呈現資料洞察。 | [課程](4-Data-Science-Lifecycle/16-communication/README.md) | [Jalen](https://twitter.com/JalenMcG) | | |
| 17 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 介紹雲端資料科學及其優點的系列課程。 | [課程](5-Data-Science-In-Cloud/17-Introduction/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 18 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用低代碼工具訓練模型。 |[課程](5-Data-Science-In-Cloud/18-Low-Code/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 19 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用 Azure 機器學習工作室部署模型。 | [課程](5-Data-Science-In-Cloud/19-Azure/README.md)| [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 20 | 實務資料科學 | [戰應用](6-Data-Science-In-Wild/README.md) | 真實世界中由資料科學驅動的專案。 | [課程](6-Data-Science-In-Wild/20-Real-World-Examples/README.md) | [Nitya](https://twitter.com/nitya) |
## GitHub Codespaces
請依下列步驟在 Codespace 打開此範例:
1. 點擊 Code 下拉選單選擇 Open with Codespaces 選項。
2. 在側欄底部選擇 + New codespace。
更多資訊請參考 [GitHub 文件](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository#creating-a-codespace)。
按照以下步驟在 Codespace 中開啟此範例:
1. 點擊 Code 下拉選單選擇 Open with Codespaces 選項。
2. 在視窗底部點選 + New codespace。
更多資訊請參考[GitHub 文件](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository#creating-a-codespace)。
## VSCode Remote - Containers
請依下列步驟使用本機與 VSCode 的 Remote - Containers 擴充功能在容器中開啟此版本庫
透過本機電腦和 VSCode 使用 VS Code Remote - Containers 擴充功能開啟此專案容器
1. 若您是首次使用開發容器,請確保系統符合前置條件(例如已安裝 Docker詳見[入門文件](https://code.visualstudio.com/docs/devcontainers/containers#_getting-started)。
1. 若您是首次使用開發容器,請確保您的系統符合前置需求(例如已安裝 Docker詳見[快速入門說明](https://code.visualstudio.com/docs/devcontainers/containers#_getting-started)。
使用此版本庫,您可以選擇以獨立 Docker 卷打開
使用此倉庫時,您可選擇在獨立的 Docker 卷中開啟
**注意**:底層將使用 Remote-Containers 的 **Clone Repository in Container Volume...** 命令,將原始碼克隆至 Docker 卷而非本地檔案系統。[卷](https://docs.docker.com/storage/volumes/) 為持久化容器資料的首選
**注意**:底層會使用 Remote-Containers**Clone Repository in Container Volume...** 指令,將原始碼克隆至 Docker 卷中,而非本地檔案系統。[卷](https://docs.docker.com/storage/volumes/)是持久化容器資料的推薦方式
或者打開本地克隆或下載的版本庫
或者直接開啟本地已克隆或下載的專案
- 將此版本庫克隆至本地檔案系統
- 按 F1 並選擇 **Remote-Containers: Open Folder in Container...** 令。
- 選取克隆資料夾,等待容器啟動後開始使用。
- 將倉庫克隆到本地磁碟
- 按 F1 並選擇 **Remote-Containers: Open Folder in Container...** 令。
- 選取克隆資料夾,等待容器啟動後即可開始使用。
## 離線存取
您可使用 [Docsify](https://docsify.js.org/#/) 離線閱讀本文件。請分支fork此版本庫於本機安裝 Docsify並於此版本庫根目錄下執行 `docsify serve`。網站將於本地執行於 3000 端口`localhost:3000`。
您可使用 [Docsify](https://docsify.js.org/#/) 離線瀏覽此文檔。先分支此倉庫,於本機安裝 [Docsify](https://docsify.js.org/#/quickstart),然後在此倉庫根目錄輸入 `docsify serve`。網站會在本地主機的 3000 埠口提供服務`localhost:3000`。
> 注意,notebook 不會透過 Docsify 呈現,當需執行 notebook 時,請在 VS Code 中用 Python kernel 獨立執行
> 注意,筆記本文件無法透過 Docsify 直接渲染,需另行於 VS Code 執行帶有 Python 核心的筆記本
## 其他課程
我們團隊也製作其他課程!請參考:
我們團隊還製作其他課程!歡迎參考:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
[![LangChain4j 初學者指南](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js for Beginners](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain for Beginners](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain4j for Beginners](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js 初學者](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain 初學者](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / Agents
[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI Agents for Beginners](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AZD 初學者](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI 初學者](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP 初學者](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI Agents 初學者](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### 生成式 AI 系列
[![Generative AI for Beginners](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
[![生成式 AI 初學者](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
---
### 核心學習
[![ML for Beginners](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![Data Science for Beginners](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![AI for Beginners](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![Cybersecurity for Beginners](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![Web Dev for Beginners](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![IoT for Beginners](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![XR Development for Beginners](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
[![機器學習 初學者](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![數據科學 初學者](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![人工智能 初學者](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![網絡安全 初學者](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![網頁開發 初學者](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![物聯網 初學者](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![擴展實境開發 初學者](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### Copilot 系列
[![Copilot for AI Paired Programming](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![Copilot for C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
[![Copilot 用於 AI 配對程式設計](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![Copilot 用於 C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot 冒險](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
<!-- CO-OP TRANSLATOR OTHER COURSES END -->
## 獲取支援
## 尋求協助
**遇到問題嗎?** 請查看我們的 [故障排除指南](TROUBLESHOOTING.md),以解決常見問題
**遇到問題** 查看我們的[疑難排解指南](TROUBLESHOOTING.md)以找到常見問題解決方案
如果你遇到困難或有任何建立 AI 應用程式的問題,歡迎加入學習者和經驗豐富的開發者社群,一同討論 MCP。這是一個支持互助的社區歡迎提出問題並自由分享知識。
如果你在構建 AI 應用時遇到困難或有任何疑問,歡迎加入其他學習者和經驗豐富開發者的討論,一同交流 MCP。這是一個支持性的社群歡迎提問並自由分享知識。
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
如果你有產品反饋或在開發中遇到錯誤,請訪問:
如果你有產品反饋或在構建過程中發現錯誤,請訪問:
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
@ -249,5 +259,5 @@ Azure Cloud Advocates at Microsoft 很高興提供一個為期 10 週,共 20
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免責聲明**
本文件使用人工智能翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們力求準確,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的本地語言版本應視為權威資料。對於重要資訊,建議採用專業人工翻譯。我們不對因使用本翻譯而引致的任何誤解或誤釋承擔責任。
本文件使用人工智能翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們力求準確,但請注意,自動翻譯可能存在錯誤或不準確之處。原文文件應被視為權威來源。對於重要資訊,建議採用專業人工翻譯。我們不對因使用此翻譯而產生的任何誤解或誤釋承擔責任。
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -4,7 +4,7 @@
Nitya Narasimhan藝術家
![roadmap sketchnote](../../../translated_images/zh-HK/00-Roadmap.4905d6567dff47532b9bfb8e0b8980fc6b0b1292eebb24181c1a9753b33bc0f5.png)
![roadmap sketchnote](../../../translated_images/zh-HK/00-Roadmap.4905d6567dff4753.webp)
**免責聲明**
本文件已使用人工智能翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於重要信息,建議使用專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或錯誤解釋不承擔責任。

@ -11,12 +11,24 @@
"source_file": "1-Introduction/01-defining-data-science/assignment.md",
"language_code": "zh-MO"
},
"1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec",
"translation_date": "2026-02-28T08:58:52+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "zh-MO"
},
"1-Introduction/01-defining-data-science/solution/assignment.md": {
"original_hash": "a8f79b9c0484c35b4f26e8aec7fc4d56",
"translation_date": "2025-08-27T09:04:54+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/assignment.md",
"language_code": "zh-MO"
},
"1-Introduction/01-defining-data-science/solution/notebook.ipynb": {
"original_hash": "090bbfbfcb0c40d3d6e3236f836164ea",
"translation_date": "2026-02-28T08:59:27+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/notebook.ipynb",
"language_code": "zh-MO"
},
"1-Introduction/02-ethics/README.md": {
"original_hash": "58860ce9a4b8a564003d2752f7c72851",
"translation_date": "2025-10-03T16:07:36+00:00",
@ -95,6 +107,12 @@
"source_file": "2-Working-With-Data/07-python/assignment.md",
"language_code": "zh-MO"
},
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38",
"translation_date": "2026-02-28T09:00:17+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "zh-MO"
},
"2-Working-With-Data/08-data-preparation/README.md": {
"original_hash": "1b560955ff39a2bcf2a049fce474a951",
"translation_date": "2025-09-06T06:55:21+00:00",
@ -360,8 +378,8 @@
"language_code": "zh-MO"
},
"README.md": {
"original_hash": "9204a2806964384a56f5cb0f22bbe953",
"translation_date": "2026-02-06T07:37:10+00:00",
"original_hash": "f671e295a294a2559fc59d1524e001b4",
"translation_date": "2026-02-28T09:06:16+00:00",
"source_file": "README.md",
"language_code": "zh-MO"
},

@ -6,7 +6,7 @@
---
[![定義數據科學影片](../../../../translated_images/zh-MO/video-def-ds.6623ee2392ef1abf6d7faf3fad10a4163642811749da75f44e35a5bb121de15c.png)](https://youtu.be/beZ7Mb_oz9I)
[![定義數據科學影片](../../../../translated_images/zh-MO/video-def-ds.6623ee2392ef1abf.webp)](https://youtu.be/beZ7Mb_oz9I)
## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/0)
@ -144,7 +144,7 @@
在這個挑戰中,我們將透過分析文本來尋找與資料科學領域相關的概念。我們會選取一篇關於資料科學的維基百科文章,下載並處理文本,然後建立一個像這樣的文字雲:
![資料科學文字雲](../../../../translated_images/zh-MO/ds_wordcloud.664a7c07dca57de017c22bf0498cb40f898d48aa85b3c36a80620fea12fadd42.png)
![資料科學文字雲](../../../../translated_images/zh-MO/ds_wordcloud.664a7c07dca57de0.webp)
請訪問 [`notebook.ipynb`](../../../../1-Introduction/01-defining-data-science/notebook.ipynb ':ignore') 來閱讀程式碼。你也可以執行程式碼,並即時查看它如何進行所有的資料轉換。

@ -3,15 +3,15 @@
{
"cell_type": "markdown",
"source": [
"# 挑戰:分析關數據科學的文本\n",
"# 挑戰:分析關數據科學的文本\n",
"\n",
"在這個例子中,我們將進行一個簡單的練習,涵蓋傳統數據科學流程的所有步驟。你不需要撰寫任何程式碼,只需點擊下面的單元格執行它們並觀察結果。作為挑戰,鼓勵你使用不同的數據來嘗試這段程式碼。\n",
"在這個範例中,讓我們做一個涵蓋傳統數據科學過程所有步驟的簡單練習。你不需要撰寫任何程式碼,只需點擊下面的儲存格來執行它們並觀察結果。作為挑戰,你可以嘗試用不同的數據來執行這段程式碼。\n",
"\n",
"## 目標\n",
"\n",
"在這節課中,我們討論了與數據科學相關的不同概念。現在讓我們通過進行一些**文本挖掘**來探索更多相關概念。我們將從一段有關數據科學的文本開始,提取其中的關鍵字,然後嘗試將結果可視化。\n",
"在本課程中,我們一直在討論與數據科學相關的不同概念。讓我們試著通過進行一些**文本挖掘**來發現更多相關概念。我們將從一段關於數據科學的文本開始,從中提取關鍵詞,然後嘗試將結果視覺化。\n",
"\n",
"作為文本,我將使用維基百科上關數據科學的頁面:\n"
"作為文本,我將使用維基百科上關數據科學的頁面:\n"
],
"metadata": {}
},
@ -32,9 +32,9 @@
{
"cell_type": "markdown",
"source": [
"## 第一步:獲取資料\n",
"## Step 1: 取得數據\n",
"\n",
"每個資料科學流程的第一步就是獲取資料。我們將使用 `requests` 函式庫來完成這個步驟\n"
"每個數據科學流程的第一步是取得數據。我們會使用 `requests` 庫來完成這個工作\n"
],
"metadata": {}
},
@ -66,45 +66,43 @@
{
"cell_type": "markdown",
"source": [
"## 步驟 2轉換資料\n",
"## 第 2 步:轉換數據\n",
"\n",
"下一步是將資料轉換成適合處理的形式。在我們的案例中,我們已經從網頁下載了 HTML 原始碼,現在需要將其轉換為純文字。\n",
"下一步是將數據轉換成適合處理的形式。在我們的例子中,我們已經下載了頁面的 HTML 原始碼,並需要將其轉換為純文字。\n",
"\n",
"有許多方法可以完成這個任務。我們將使用 Python 中最簡單的內建物件 [HTMLParser](https://docs.python.org/3/library/html.parser.html)。我們需要繼承 `HTMLParser` 類別,並定義程式碼來收集 HTML 標籤內的所有文字,但要排除 `<script>` 和 `<style>` 標籤中的內容。\n"
"有很多方法可以做到這一點。我們將使用 [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/),一個受歡迎的 Python 庫用來解析 HTML。BeautifulSoup 允許我們針對特定的 HTML 元素,因此我們可以專注於維基百科的主要文章內容,並減少一些導航選單、側邊欄、頁腳以及其他無關的內容(雖然有些樣板文字可能仍然存在)。\n"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"首先,我們需要安裝用於 HTML 解析的 BeautifulSoup 庫:\n"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": null,
"source": [
"import sys\r\n",
"!{sys.executable} -m pip install beautifulsoup4"
],
"outputs": [],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 64,
"source": [
"from html.parser import HTMLParser\r\n",
"\r\n",
"class MyHTMLParser(HTMLParser):\r\n",
" script = False\r\n",
" res = \"\"\r\n",
" def handle_starttag(self, tag, attrs):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = True\r\n",
" def handle_endtag(self, tag):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = False\r\n",
" def handle_data(self, data):\r\n",
" if str.strip(data)==\"\" or self.script:\r\n",
" return\r\n",
" self.res += ' '+data.replace('[ edit ]','')\r\n",
"\r\n",
"parser = MyHTMLParser()\r\n",
"parser.feed(text)\r\n",
"text = parser.res\r\n",
"print(text[:1000])"
"from bs4 import BeautifulSoup\r\n\r\n# Parse the HTML content\r\nsoup = BeautifulSoup(text, 'html.parser')\r\n\r\n# Extract only the main article content from Wikipedia\r\n# Wikipedia uses 'mw-parser-output' class for the main article content\r\ncontent = soup.find('div', class_='mw-parser-output')\r\n\r\ndef clean_wikipedia_content(content_node):\r\n \"\"\"Remove common non-article elements from a Wikipedia content node.\"\"\"\r\n # Strip jump links, navboxes, reference lists/superscripts, edit sections, TOC, sidebars, etc.\r\n selectors = [\r\n '.mw-jump-link',\r\n '.navbox',\r\n '.reflist',\r\n 'sup.reference',\r\n '.mw-editsection',\r\n '.hatnote',\r\n '.metadata',\r\n '.infobox',\r\n '#toc',\r\n '.toc',\r\n '.sidebar',\r\n ]\r\n for selector in selectors:\r\n for el in content_node.select(selector):\r\n el.decompose()\r\n\r\nif content:\r\n # Clean the content node to better approximate article text only.\r\n clean_wikipedia_content(content)\r\n text = content.get_text(separator=' ', strip=True)\r\n print(text[:1000])\r\nelse:\r\n print(\"Could not find main content. Using full page text.\")\r\n text = soup.get_text(separator=' ', strip=True)\r\n print(text[:1000])"
],
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" Data science - Wikipedia Data science From Wikipedia, the free encyclopedia Jump to navigation Jump to search Interdisciplinary field of study focused on deriving knowledge and insights from data Not to be confused with information science . The existence of Comet NEOWISE (here depicted as a series of red dots) was discovered by analyzing astronomical survey data acquired by a space telescope , the Wide-field Infrared Survey Explorer . Part of a series on Machine learning and data mining Problems Classification Clustering Regression Anomaly detection AutoML Association rules Reinforcement learning Structured prediction Feature engineering Feature learning Online learning Semi-supervised learning Unsupervised learning Learning to rank Grammar induction Supervised learning ( classification  • regression ) Decision trees Ensembles Bagging Boosting Random forest k -NN Linear regression Naive Bayes Artificial neural networks Logistic regression Perceptron Relevance vector machine \n"
"Data science From Wikipedia, the free encyclopedia Interdisciplinary field of study focused on deriving knowledge and insights from data Data science is an interdisciplinary academic field that uses statistics, scientific computing, scientific methods, processes, algorithms and systems to extract or extrapolate knowledge and insights from noisy, structured, and unstructured data. Data science also integrates domain knowledge from the underlying application domain. Data science is multifaceted and can be described as a science, a research paradigm, a research method, a discipline, a workflow, and a profession.\n"
]
}
],
@ -113,11 +111,11 @@
{
"cell_type": "markdown",
"source": [
"## 第三步:獲取洞察\n",
"## Step 3: 獲取洞察\n",
"\n",
"最重要的一步是將我們的數據轉化為可以提取洞察的形式。在我們的案例中,我們希望從文本中提取關鍵字,並了解哪些關鍵字更具意義。\n",
"最重要的步驟是將我們的數據轉換成一種可以讓我們獲取洞察的形式。在我們的情況下,我們想從文本中提取關鍵詞,並查看哪些關鍵詞更有意義。\n",
"\n",
"我們將使用一個名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 函式庫來進行關鍵字提取。首先,如果尚未安裝這個函式庫,我們需要先安裝它:\n"
"我們將使用名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來提取關鍵詞。首先,如果該庫尚未安裝,我們先安裝它:\n"
],
"metadata": {}
},
@ -162,7 +160,7 @@
{
"cell_type": "markdown",
"source": [
"主要功能可從 `Rake` 對象獲得,我們可以使用一些參數來自定義。在我們的例子中,我們將關鍵字的最小長度設置為 5 個字符,關鍵字在文檔中的最小頻率設置為 3關鍵字中的最大單詞數設置為 2。可以隨意嘗試其他值並觀察結果。\n"
"主要功能可從 `Rake` 物件中取得,我們可以使用一些參數來自訂。以我們的例子,我們會將關鍵字的最小長度設定為 5 個字元,關鍵字在文件中出現的最小頻率設定為 3以及關鍵字中最多的字數設定為 2。歡迎隨意調整其他數值並觀察結果。\n"
],
"metadata": {}
},
@ -211,11 +209,12 @@
{
"cell_type": "markdown",
"source": [
"我們獲得了一份術語清單,並附有其相關的重要性程度。如你所見,最相關的學科,例如機器學習和大數據,位於清單的頂部位置。\n",
"\n",
"## 第四步:結果的可視化\n",
"我們取得了一個詞彙清單,並附有相關的重要程度。正如你所見,最相關的領域,例如機器學習和大數據,都出現在清單的頂端位置。\n",
"\n",
"人們通常能以視覺形式最有效地解讀數據。因此,將數據進行可視化以獲取一些洞察通常是有意義的。我們可以使用 Python 中的 `matplotlib` 庫來繪製關鍵字及其相關性的簡單分佈圖:\n"
"## Step 4: 視覺化結果\n",
"\n",
"人們可以透過視覺形式最佳解讀數據。因此,通常有必要將數據視覺化以獲得一些洞見。我們可以使用 Python 的 `matplotlib` 函式庫來繪製關鍵詞及其相關性的簡單分布:\n"
],
"metadata": {}
},
@ -252,7 +251,7 @@
{
"cell_type": "markdown",
"source": [
"然而,還有一種更好的方式來可視化詞頻——使用**文字雲**。我們需要安裝另一個庫來從我們的關鍵詞列表中繪製文字雲。\n"
"不過,還有一種更好的方式來視覺化詞頻——使用 **詞雲**。我們需要安裝另一個庫,從我們的關鍵詞列表繪製詞雲。\n"
],
"metadata": {}
},
@ -268,7 +267,7 @@
{
"cell_type": "markdown",
"source": [
"`WordCloud` 物件負責接收原始文本或預先計算的單詞及其頻率列表,並返回一個圖像,之後可以使用 `matplotlib` 顯示:\n"
"`WordCloud` 物件負責接收原始文本,或是預先計算好的帶有其頻率的詞語列表,並回傳一張圖片,該圖片隨後可以使用 `matplotlib` 顯示:\n"
],
"metadata": {}
},
@ -312,7 +311,7 @@
{
"cell_type": "markdown",
"source": [
"我們也可以將原始文本傳遞給 `WordCloud` - 讓我們看看是否能夠得到類似的結果:\n"
"我們亦可以將原始文字傳入 `WordCloud` —— 讓我們看看是否能夠得到相似的結果:\n"
],
"metadata": {}
},
@ -372,11 +371,11 @@
{
"cell_type": "markdown",
"source": [
"你可以看到,現在的文字雲看起來更吸引人,但同時也包含了許多雜訊(例如像 `Retrieved on` 這樣無關的詞語)。此外,我們獲得的雙詞關鍵字(例如 *data scientist* 或 *computer science*)也變少了。這是因為 RAKE 演算法在從文本中選取優質關鍵字方面表現得更出色。這個例子說明了資料前處理和清理的重要性,因為最終清晰的結果能幫助我們做出更好的決策。\n",
"你可以看到詞雲現在看起來更有吸引力了,但它也包含了很多雜訊(例如,不相關的詞如 `Retrieved on`)。此外,我們得到的由兩個詞組成的關鍵字較少,例如 *data scientist* 或 *computer science*。這是因為 RAKE 演算法在從文本中選擇良好關鍵字方面表現得更好。這個例子說明了資料預處理和清理的重要性,因為清晰的畫面將使我們能做出更好的決策。\n",
"\n",
"在這個練習中,我們簡單地從維基百科的文本中提取了一些意義,以關鍵字和文字雲的形式呈現。這個例子雖然相對簡單,但很好地展示了資料科學家在處理資料時會採取的所有典型步驟,從資料獲取到視覺化。\n",
"在本次練習中,我們經歷了一個簡單的過程,從維基百科文字中以關鍵字和詞雲的形式提取一些意義。這個例子相當簡單,但它很好地展示了資料科學家在處理資料時會採取的所有典型步驟,從資料獲取到視覺化。\n",
"\n",
"在我們的課程中,我們將詳細討論這些步驟。\n"
"在課程中,我們將詳細討論這些步驟。\n"
],
"metadata": {}
},
@ -394,7 +393,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免責聲明** \n本文檔已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。原始語言的文件應被視為權威來源。對於關鍵信息,建議尋求專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋不承擔責任。\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免責聲明**\n本文件係使用人工智能翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。儘管我們致力於確保準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件以其本地語言版本為唯一權威來源。對於重要資訊,建議採用專業人工翻譯。我們對因使用此翻譯而導致的任何誤解或誤譯概不負責。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -418,12 +417,6 @@
},
"interpreter": {
"hash": "c28e7b6bf4e5b397b8288a85bf0a94ea8d3585ce2b01919feb195678ec71581b"
},
"coopTranslator": {
"original_hash": "50c0f0a5204a18405611cbe7e0fec56b",
"translation_date": "2025-09-02T09:58:49+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "mo"
}
},
"nbformat": 4,

@ -5,13 +5,13 @@
"source": [
"# 挑戰:分析有關數據科學的文本\n",
"\n",
"> *在這份筆記中,我們嘗試使用不同的 URL - 關於機器學習的維基百科文章。你會發現,與數據科學不同,這篇文章包含了許多術語,這使得分析更加困難。我們需要在進行關鍵字提取後,想出另一種方法來清理數據,以去除一些頻繁但無意義的詞組。*\n",
"> *在這個筆記本中,我們嘗試使用不同的 URL - 維基百科關於機器學習的文章。你可以看到,與數據科學不同,這篇文章包含了許多術語,這使得分析更具挑戰性。我們需要在執行關鍵詞提取後,想出另一種方法來清理數據,以剔除一些頻繁出現但沒有意義的詞組。*\n",
"\n",
"在這個例子中,我們將進行一個簡單的練習,涵蓋傳統數據科學流程的所有步驟。你不需要撰寫任何程式碼,只需點擊下面的單元格執行它們並觀察結果。作為挑戰,我們鼓勵你使用不同的數據來嘗試這段程式碼。\n",
"在這個範例中,讓我們進行一個涵蓋傳統數據科學流程所有步驟的簡單練習。你不需要編寫任何代碼,只需點擊下面的儲存格執行它們並觀察結果。作為挑戰,建議你嘗試用不同的數據來運行這段代碼。\n",
"\n",
"## 目標\n",
"\n",
"在這節課中,我們討論了與數據科學相關的不同概念。讓我們嘗試通過**文本挖掘**來發現更多相關概念。我們將從一段有關數據科學的文本開始,從中提取關鍵字,然後嘗試將結果可視化。\n",
"在本課程中,我們已經討論了與數據科學相關的不同概念。讓我們通過進行一些**文本挖掘**來嘗試發現更多相關的概念。我們將從一段關於數據科學的文本開始,從中提取關鍵詞,然後嘗試視覺化結果。\n",
"\n",
"作為文本,我將使用維基百科上關於數據科學的頁面:\n"
],
@ -35,9 +35,9 @@
{
"cell_type": "markdown",
"source": [
"## 第一步:獲取資料\n",
"## Step 1: 獲取數據\n",
"\n",
"每個資料科學流程的第一步就是獲取資料。我們將使用 `requests` 函式庫來完成這個步驟:\n"
"每個數據科學流程的第一步是獲取數據。我們將使用 `requests` 庫來完成這個步驟:\n"
],
"metadata": {}
},
@ -69,45 +69,43 @@
{
"cell_type": "markdown",
"source": [
"## 第 2 步:轉換資料\n",
"## Step 2: 轉換數據\n",
"\n",
"下一步是將資料轉換成適合處理的形式。在我們的案例中,我們已經從網頁下載了 HTML 原始碼,現在需要將其轉換成純文字。\n",
"下一步是將數據轉換成適合處理的形式。在我們的例子中,我們已經從網頁下載了 HTML 源代碼,現在需要將它轉換成純文本。\n",
"\n",
"有許多方法可以完成這項工作。我們將使用 Python 中最簡單的內建 [HTMLParser](https://docs.python.org/3/library/html.parser.html) 物件。我們需要繼承 `HTMLParser` 類別,並定義程式碼以收集所有 HTML 標籤內的文字,除了 `<script>` 和 `<style>` 標籤。\n"
"有很多方法可以做到這一點。我們將使用 [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/),一個流行的 Python HTML 解析庫。BeautifulSoup 允許我們定位特定的 HTML 元素,因此我們可以專注於維基百科的主要文章內容,減少一些導航菜單、側邊欄、頁腳和其他無關內容(但仍可能保留部分樣板文字)。\n"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"首先我們需要安裝用於HTML解析的BeautifulSoup庫\n"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": null,
"source": [
"import sys\r\n",
"!{sys.executable} -m pip install beautifulsoup4"
],
"outputs": [],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 4,
"source": [
"from html.parser import HTMLParser\r\n",
"\r\n",
"class MyHTMLParser(HTMLParser):\r\n",
" script = False\r\n",
" res = \"\"\r\n",
" def handle_starttag(self, tag, attrs):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = True\r\n",
" def handle_endtag(self, tag):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = False\r\n",
" def handle_data(self, data):\r\n",
" if str.strip(data)==\"\" or self.script:\r\n",
" return\r\n",
" self.res += ' '+data.replace('[ edit ]','')\r\n",
"\r\n",
"parser = MyHTMLParser()\r\n",
"parser.feed(text)\r\n",
"text = parser.res\r\n",
"print(text[:1000])"
"from bs4 import BeautifulSoup\r\n\r\n# Parse the HTML content\r\nsoup = BeautifulSoup(text, 'html.parser')\r\n\r\n# Extract only the main article content from Wikipedia\r\n# Wikipedia uses 'mw-parser-output' class for the main article content\r\ncontent = soup.find('div', class_='mw-parser-output')\r\n\r\ndef clean_wikipedia_content(content_node):\r\n \"\"\"Remove common non-article elements from a Wikipedia content node.\"\"\"\r\n # Strip jump links, navboxes, reference lists/superscripts, edit sections, TOC, sidebars, etc.\r\n selectors = [\r\n '.mw-jump-link',\r\n '.navbox',\r\n '.reflist',\r\n 'sup.reference',\r\n '.mw-editsection',\r\n '.hatnote',\r\n '.metadata',\r\n '.infobox',\r\n '#toc',\r\n '.toc',\r\n '.sidebar',\r\n ]\r\n for selector in selectors:\r\n for el in content_node.select(selector):\r\n el.decompose()\r\n\r\nif content:\r\n # Clean the content node to better approximate article text only.\r\n clean_wikipedia_content(content)\r\n text = content.get_text(separator=' ', strip=True)\r\n print(text[:1000])\r\nelse:\r\n print(\"Could not find main content. Using full page text.\")\r\n text = soup.get_text(separator=' ', strip=True)\r\n print(text[:1000])"
],
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" Machine learning - Wikipedia Machine learning From Wikipedia, the free encyclopedia Jump to navigation Jump to search Study of algorithms that improve automatically through experience For the journal, see Machine Learning (journal) . \"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition . Part of a series on Artificial intelligence Major goals Artificial general intelligence Planning Computer vision General game playing Knowledge reasoning Machine learning Natural language processing Robotics Approaches Symbolic Deep learning Bayesian networks Evolutionary algorithms Philosophy Ethics Existential risk Turing test Chinese room Control problem Friendly AI History Timeline Progress AI winter Technology Applications Projects Programming languages Glossary Glossary v t e Part of a series on Machine learning and data mining Problems Classification Clustering Regression Anomaly detection Data Cleaning AutoML Associ\n"
"Machine learning From Wikipedia, the free encyclopedia Study of algorithms that improve automatically through experience Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of statistical algorithms that can learn from data and generalize to unseen data, and thus perform tasks without explicit instructions. Recently, artificial neural networks have been able to surpass many previous approaches in performance. ML finds application in many fields, including natural language processing, computer vision, speech recognition, email filtering, agriculture, and medicine.\n"
]
}
],
@ -116,11 +114,11 @@
{
"cell_type": "markdown",
"source": [
"## 第三步:獲取洞察\n",
"## Step 3: 獲取洞察\n",
"\n",
"最重要的一步是將我們的數據轉化為可以提取洞察的形式。在我們的情況下,我們希望從文本中提取關鍵字,並找出哪些關鍵字更具意義。\n",
"最重要的步驟是將我們的數據轉換成可從中提取洞察的形式。在我們的案例中,我們想從文本中提取關鍵字,並查看哪些關鍵字更有意義。\n",
"\n",
"我們將使用一個名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 函式庫來進行關鍵字提取。首先,讓我們安裝這個函式庫,以防尚未安裝:\n"
"我們將使用名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來進行關鍵字提取。首先,讓我們安裝這個庫,以防尚未安裝:\n"
],
"metadata": {}
},
@ -172,7 +170,7 @@
{
"cell_type": "markdown",
"source": [
"主要功能可從 `Rake` 對象獲取,我們可以使用一些參數來自定義。在我們的情況下,我們將關鍵字的最小長度設置為 5 個字符,關鍵字在文檔中的最小頻率設置為 3關鍵字中的最大單詞數設置為 2。可以隨意嘗試其他值並觀察結果。\n"
"主要功能可從 `Rake` 物件使用,我們可以透過一些參數進行自訂。在本例中,我們將設定關鍵字的最短長度為 5 個字元、關鍵字在文件中的最小出現頻率為 3及關鍵字中最多包含 2 個字。歡迎自由調整其他數值並觀察結果。\n"
],
"metadata": {}
},
@ -353,11 +351,12 @@
{
"cell_type": "markdown",
"source": [
"我們獲得了一份術語清單,並附上其重要性程度。如您所見,最相關的領域,例如機器學習和大數據,位於清單的前列位置。\n",
"\r\n",
"我們取得了一個詞彙清單以及相關聯的重要性程度。如你所見,最相關的學科,例如機器學習和大數據,均位於清單的前列。\n",
"\n",
"## 第四步:結果視覺化\n",
"## 第四步:視覺化結果\n",
"\n",
"人們通常能以視覺形式最佳地解讀數據。因此,將數據進行視覺化以獲取一些洞察通常是合理的。我們可以使用 Python 中的 `matplotlib` 庫來繪製關鍵字及其相關性的簡單分佈圖\n"
"人們最能透過視覺形式解讀數據。因此,通常將數據視覺化以便獲取一些見解是有意義的。我們可以使用 Python 的 `matplotlib` 函式庫來繪製關鍵字及其相關性的簡單分布\n"
],
"metadata": {}
},
@ -392,7 +391,7 @@
{
"cell_type": "markdown",
"source": [
"然而,還有一種更好的方式來視覺化詞頻——使用**文字雲**。我們需要安裝另一個庫來從我們的關鍵詞列表繪製文字雲。\n"
"不過,還有更好的方法來視覺化詞頻——使用**文字雲**。我們需要安裝另一個庫來從我們的關鍵詞列表繪製文字雲。\n"
],
"metadata": {}
},
@ -408,7 +407,7 @@
{
"cell_type": "markdown",
"source": [
"`WordCloud` 物件負責接收原始文本或預先計算的單詞及其頻率列表,並返回一個圖像,隨後可使用 `matplotlib` 顯示:\n"
"`WordCloud` 物件負責接收原始文字,或預先計算好的詞語及其頻率列表,並返回一幅圖像,該圖像可使用 `matplotlib` 顯示:\n"
],
"metadata": {}
},
@ -441,7 +440,7 @@
{
"cell_type": "markdown",
"source": [
"我們也可以將原始文本傳遞給 `WordCloud` - 讓我們看看是否能夠獲得類似的結果:\n"
"我們也可以將原始文本傳入 `WordCloud` —— 讓我們看看是否能夠得到類似的結果:\n"
],
"metadata": {}
},
@ -490,11 +489,11 @@
{
"cell_type": "markdown",
"source": [
"你可以看到,現在的文字雲看起來更吸引人,但同時也包含了許多雜訊(例如,像 `Retrieved on` 這樣無關的詞彙)。此外,我們獲得的雙詞關鍵字(例如 *data scientist* 或 *computer science*)也變少了。這是因為 RAKE 演算法在從文本中選取優質關鍵字方面表現得更好。這個例子說明了資料前處理和清理的重要性,因為最終清晰的結果能幫助我們做出更好的決策。\n",
"你可以看到詞雲現在看起來更令人印象深刻,但它也包含了很多雜訊(例如無關的詞語如 `Retrieved on`)。此外,我們得到的由兩個詞組成的關鍵詞較少,比如 *data scientist* 或 *computer science*。這是因為 RAKE 演算法在從文本中選擇優質關鍵詞方面表現得更好。這個例子說明了資料預處理和清理的重要性,因為最後清晰的圖像將使我們能夠做出更好的決策。\n",
"\n",
"在這個練習中,我們簡單地從維基百科的文本中提取了一些意義,以關鍵字和文字雲的形式呈現。這個例子雖然簡單,但很好地展示了資料科學家在處理資料時通常會採取的所有步驟,從資料獲取到視覺化。\n",
"在這個練習中,我們經歷了從維基百科文本中提取某些意義的簡單過程,以關鍵詞和詞雲的形式呈現。這個例子相當簡單,但它很好地展示了資料科學家處理資料時會採取的所有典型步驟,從資料獲取開始,一直到視覺化。\n",
"\n",
"在我們的課程中,我們將詳細討論這些步驟。\n"
"在我們的課程中,我們將詳細討論所有這些步驟。\n"
],
"metadata": {}
},
@ -502,7 +501,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免責聲明** \n本文件使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而產生的任何誤解或錯誤解讀概不負責。\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免責聲明**\n本文件經由人工智能翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於確保準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為唯一具權威性的來源。對於關鍵資訊,建議使用專業人工翻譯。對於因使用此翻譯而產生的任何誤解或誤譯,我們不承擔任何責任。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -526,12 +525,6 @@
},
"interpreter": {
"hash": "86193a1ab0ba47eac1c69c1756090baa3b420b3eea7d4aafab8b85f8b312f0c5"
},
"coopTranslator": {
"original_hash": "dbdf34788efab64e5d817f1df38965a8",
"translation_date": "2025-09-02T10:13:01+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/notebook.ipynb",
"language_code": "mo"
}
},
"nbformat": 4,

@ -6,7 +6,7 @@
統計學與機率論是數學中兩個密切相關的領域,對於數據科學非常重要。雖然在沒有深入數學知識的情況下也可以處理數據,但了解一些基本概念仍然是有益的。在這裡,我們將提供一個簡短的介紹,幫助你入門。
[![介紹影片](../../../../translated_images/zh-MO/video-prob-and-stats.e4282e5efa2f2543400843ed98b1057065c9600cebfc8a728e8931b5702b2ae4.png)](https://youtu.be/Z5Zy85g4Yjw)
[![介紹影片](../../../../translated_images/zh-MO/video-prob-and-stats.e4282e5efa2f2543.webp)](https://youtu.be/Z5Zy85g4Yjw)
## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/6)
@ -30,7 +30,7 @@
我們只能討論變數落在某個值區間內的機率,例如 P(t<sub>1</sub>≤X<t<sub>2</sub>)。在這種情況下,機率分佈由 **機率密度函數** p(x) 描述,其公式如下:
![P(t_1\le X<t_2)=\int_{t_1}^{t_2}p(x)dx](../../../../translated_images/zh-MO/probability-density.a8aad29f17a14afb519b407c7b6edeb9f3f9aa5f69c9e6d9445f604e5f8a2bf7.png)
![P(t_1\le X<t_2)=\int_{t_1}^{t_2}p(x)dx](../../../../translated_images/zh-MO/probability-density.a8aad29f17a14afb.webp)
連續型均勻分佈是均勻分佈的連續版本,定義在有限區間內。變數 X 落入某個區間的機率與區間長度 l 成正比,並且最大為 1。
@ -73,11 +73,11 @@
以下是顯示我們數據的平均值、中位數和四分位數的盒形圖:
![體重盒形圖](../../../../translated_images/zh-MO/weight-boxplot.1dbab1c03af26f8a008fff4e17680082c8ab147d6df646cbac440bbf8f5b9c42.png)
![體重盒形圖](../../../../translated_images/zh-MO/weight-boxplot.1dbab1c03af26f8a.webp)
由於我們的數據包含不同球員 **角色** 的信息,我們也可以按角色繪製盒形圖——這將幫助我們了解參數值在不同角色之間的差異。這次我們將考慮身高:
![按角色繪製的盒形圖](../../../../translated_images/zh-MO/boxplot_byrole.036b27a1c3f52d42f66fba2324ec5cde0a1bca6a01a619eeb0ce7cd054b2527b.png)
![按角色繪製的盒形圖](../../../../translated_images/zh-MO/boxplot_byrole.036b27a1c3f52d42.webp)
這個圖表表明,平均而言,一壘手的身高高於二壘手的身高。在本課程的後面部分,我們將學習如何更正式地檢驗這一假設,以及如何證明我們的數據在統計上具有顯著性。
@ -85,7 +85,7 @@
為了查看我們數據的分佈,我們可以繪製一個稱為 **直方圖** 的圖表。X 軸包含不同的體重區間(即 **箱**Y 軸顯示隨機變數樣本落入某個區間的次數。
![真實世界數據的直方圖](../../../../translated_images/zh-MO/weight-histogram.bfd00caf7fc30b145b21e862dba7def41c75635d5280de25d840dd7f0b00545e.png)
![真實世界數據的直方圖](../../../../translated_images/zh-MO/weight-histogram.bfd00caf7fc30b14.webp)
從這個直方圖中可以看出,所有值都集中在某個平均體重附近,距離平均體重越遠,該值出現的次數越少。也就是說,棒球隊員的體重非常不同於平均體重的可能性很低。體重的方差顯示了體重與平均值可能的差異程度。
@ -103,7 +103,7 @@ samples = np.random.normal(mean,std,1000)
如果我們繪製生成樣本的直方圖,我們會看到與上面類似的圖像。如果我們增加樣本數量和箱數,我們可以生成更接近理想的正態分佈圖像:
![平均值=0標準差=1 的正態分佈](../../../../translated_images/zh-MO/normal-histogram.dfae0d67c202137d552d0015fb87581eca263925e512404f3c12d8885315432e.png)
![平均值=0標準差=1 的正態分佈](../../../../translated_images/zh-MO/normal-histogram.dfae0d67c202137d.webp)
*平均值=0標準差=1 的正態分佈*
@ -225,7 +225,7 @@ array([[1. , 0.52959196],
在我們的例子中,值 0.53 表明一個人的體重和身高之間存在一定的相關性。我們還可以繪製一個值對另一個值的散點圖,以直觀地查看關係:
![體重與身高的關係](../../../../translated_images/zh-MO/weight-height-relationship.3f06bde4ca2aba9974182c4ef037ed602acd0fbbbbe2ca91cefd838a9e66bcf9.png)
![體重與身高的關係](../../../../translated_images/zh-MO/weight-height-relationship.3f06bde4ca2aba99.webp)
> 更多關於相關性和協方差的例子可以在 [配套筆記本](notebook.ipynb) 中找到。

@ -1,6 +1,6 @@
# 資料科學簡介
![數據運作](../../../translated_images/zh-MO/data.48e22bb7617d8d92188afbc4c48effb920ba79f5cebdc0652cd9f34bbbd90c18.jpg)
![數據運作](../../../translated_images/zh-MO/data.48e22bb7617d8d92.webp)
> 照片由 <a href="https://unsplash.com/@dawson2406?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Stephen Dawson</a> 提供,來源於 <a href="https://unsplash.com/s/photos/data?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,您將了解資料科學的定義,並學習作為資料科學家必須考慮的倫理問題。此外,您還會學習資料的定義,並簡單了解統計學和機率,這些是資料科學的核心學術領域。

@ -4,7 +4,7 @@
| :-------------------------------------------------------------------------------------------------------: |
| 使用 Python - _由 [@nitya](https://twitter.com/nitya) 繪製的速記筆記_ |
[![介紹影片](../../../../translated_images/zh-MO/video-ds-python.245247dc811db8e4d5ac420246de8a118c63fd28f6a56578d08b630ae549f260.png)](https://youtu.be/dZjWOGbsN4Y)
[![介紹影片](../../../../translated_images/zh-MO/video-ds-python.245247dc811db8e4.webp)](https://youtu.be/dZjWOGbsN4Y)
雖然資料庫提供了非常高效的方式來存儲數據並使用查詢語言進行查詢,但最靈活的數據處理方式是編寫自己的程式來操作數據。在許多情況下,使用資料庫查詢可能更有效。然而,當需要更複雜的數據處理時,使用 SQL 可能不容易完成。
@ -65,7 +65,7 @@ print(f"Length of index is {len(idx)}")
items_sold = pd.Series(np.random.randint(25,50,size=len(idx)),index=idx)
items_sold.plot()
```
![時間序列圖](../../../../translated_images/zh-MO/timeseries-1.80de678ab1cf727e50e00bcf24009fa2b0a8b90ebc43e34b99a345227d28e467.png)
![時間序列圖](../../../../translated_images/zh-MO/timeseries-1.80de678ab1cf727e.webp)
假設每週我們都會為朋友舉辦派對,並額外準備 10 盒冰淇淋。我們可以創建另一個以週為索引的 Series 來展示這一點:
```python
@ -76,7 +76,7 @@ additional_items = pd.Series(10,index=pd.date_range(start_date,end_date,freq="W"
total_items = items_sold.add(additional_items,fill_value=0)
total_items.plot()
```
![時間序列圖](../../../../translated_images/zh-MO/timeseries-2.aae51d575c55181ceda81ade8c546a2fc2024f9136934386d57b8a189d7570ff.png)
![時間序列圖](../../../../translated_images/zh-MO/timeseries-2.aae51d575c55181c.webp)
> **注意**:我們沒有使用簡單的語法 `total_items+additional_items`。如果使用該語法,我們會在結果 Series 中得到許多 `NaN`*非數值*)值。這是因為在 `additional_items` Series 的某些索引點缺少值,並且將 `NaN` 與任何值相加都會得到 `NaN`。因此,我們需要在相加時指定 `fill_value` 參數。
@ -85,7 +85,7 @@ total_items.plot()
monthly = total_items.resample("1M").mean()
ax = monthly.plot(kind='bar')
```
![每月時間序列平均值](../../../../translated_images/zh-MO/timeseries-3.f3147cbc8c624881008564bc0b5d9fcc15e7374d339da91766bd0e1c6bd9e3af.png)
![每月時間序列平均值](../../../../translated_images/zh-MO/timeseries-3.f3147cbc8c624881.webp)
### DataFrame
@ -211,7 +211,7 @@ df = pd.read_csv('file.csv')
由於我們想展示如何處理數據,我們邀請你打開 [`notebook-covidspread.ipynb`](notebook-covidspread.ipynb) 並從頭到尾閱讀。你也可以執行單元格,並完成我們在最後留下的一些挑戰。
![COVID 傳播](../../../../translated_images/zh-MO/covidspread.f3d131c4f1d260ab0344d79bac0abe7924598dd754859b165955772e1bd5e8a2.png)
![COVID 傳播](../../../../translated_images/zh-MO/covidspread.f3d131c4f1d260ab.webp)
> 如果你不知道如何在 Jupyter Notebook 中運行代碼,可以查看 [這篇文章](https://soshnikov.com/education/how-to-execute-notebooks-from-github/)。
@ -233,7 +233,7 @@ df = pd.read_csv('file.csv')
打開 [`notebook-papers.ipynb`](notebook-papers.ipynb) 並從頭到尾閱讀。你也可以執行單元格,並完成我們在最後留下的一些挑戰。
![COVID 醫療處理](../../../../translated_images/zh-MO/covidtreat.b2ba59f57ca45fbcda36e0ddca3f8cfdddeeed6ca879ea7f866d93fa6ec65791.png)
![COVID 醫療處理](../../../../translated_images/zh-MO/covidtreat.b2ba59f57ca45fbc.webp)
## 處理圖像數據

File diff suppressed because one or more lines are too long

@ -1,6 +1,6 @@
# 資料處理
![data love](../../../translated_images/zh-MO/data-love.a22ef29e6742c852505ada062920956d3d7604870b281a8ca7c7ac6f37381d5a.jpg)
![data love](../../../translated_images/zh-MO/data-love.a22ef29e6742c852.webp)
> 照片由 <a href="https://unsplash.com/@swimstaralex?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Alexander Sinn</a> 提供,來自 <a href="https://unsplash.com/s/photos/data?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,您將學習一些管理、操作和應用資料的方法。您將了解關聯式和非關聯式資料庫,以及資料如何存儲於其中。您還會學習使用 Python 管理資料的基礎知識,並探索使用 Python 管理和挖掘資料的多種方式。

@ -42,7 +42,7 @@ honey.head()
```python
sns.relplot(x="priceperlb", y="state", data=honey, height=15, aspect=.5);
```
![scatterplot 1](../../../../translated_images/zh-MO/scatter1.5e1aa5fd6706c5d12b5e503ccb77f8a930f8620f539f524ddf56a16c039a5d2f.png)
![scatterplot 1](../../../../translated_images/zh-MO/scatter1.5e1aa5fd6706c5d1.webp)
接下來,使用蜂蜜色系展示價格如何隨年份演變。您可以通過添加 'hue' 參數來顯示年份的變化:
@ -51,7 +51,7 @@ sns.relplot(x="priceperlb", y="state", data=honey, height=15, aspect=.5);
```python
sns.relplot(x="priceperlb", y="state", hue="year", palette="YlOrBr", data=honey, height=15, aspect=.5);
```
![scatterplot 2](../../../../translated_images/zh-MO/scatter2.c0041a58621ca702990b001aa0b20cd68c1e1814417139af8a7211a2bed51c5f.png)
![scatterplot 2](../../../../translated_images/zh-MO/scatter2.c0041a58621ca702.webp)
使用這種色彩方案,您可以清楚地看到蜂蜜每磅價格在多年來的明顯增長趨勢。事實上,如果您查看數據中的樣本集(例如選擇一個州,亞利桑那州),您會發現價格每年都有增長,只有少數例外:
@ -80,7 +80,7 @@ sns.relplot(x="priceperlb", y="state", size="year", data=honey, height=15, aspec
```
您可以看到點的大小逐漸增大。
![scatterplot 3](../../../../translated_images/zh-MO/scatter3.3c160a3d1dcb36b37900ebb4cf97f34036f28ae2b7b8e6062766c7c1dfc00853.png)
![scatterplot 3](../../../../translated_images/zh-MO/scatter3.3c160a3d1dcb36b3.webp)
這是否只是供需的簡單案例?由於氣候變化和蜂群崩潰等因素,是否每年可供購買的蜂蜜減少,因此價格上漲?
@ -95,7 +95,7 @@ sns.relplot(x="year", y="priceperlb", kind="line", data=honey);
```
答案是的除了2003年左右有一些例外
![line chart 1](../../../../translated_images/zh-MO/line1.f36eb465229a3b1fe385cdc93861aab3939de987d504b05de0b6cd567ef79f43.png)
![line chart 1](../../../../translated_images/zh-MO/line1.f36eb465229a3b1f.webp)
✅ 由於 Seaborn 將數據聚合到一條線上它通過繪製均值和均值周圍的95%置信區間來顯示「每個 x 值的多個測量值」。[來源](https://seaborn.pydata.org/tutorial/relational.html)。這種耗時的行為可以通過添加 `ci=None` 禁用。
@ -105,7 +105,7 @@ sns.relplot(x="year", y="priceperlb", kind="line", data=honey);
sns.relplot(x="year", y="totalprod", kind="line", data=honey);
```
![line chart 2](../../../../translated_images/zh-MO/line2.a5b3493dc01058af6402e657aaa9ae1125fafb5e7d6630c777aa60f900a544e4.png)
![line chart 2](../../../../translated_images/zh-MO/line2.a5b3493dc01058af.webp)
答案:並不完全。如果您查看總產量,實際上在那一年似乎有所增加,儘管總體而言,蜂蜜的生產量在這些年中呈下降趨勢。
@ -130,7 +130,7 @@ sns.relplot(
```
在這個視覺化中您可以比較每年的每群產量和蜂群數量並將列的包裹設置為3
![facet grid](../../../../translated_images/zh-MO/facet.6a34851dcd540050dcc0ead741be35075d776741668dd0e42f482c89b114c217.png)
![facet grid](../../../../translated_images/zh-MO/facet.6a34851dcd540050.webp)
對於這個數據集,關於蜂群數量和每群產量,按年份和州比較並沒有特別突出的地方。是否有其他方式來尋找這兩個變數之間的相關性?
@ -153,7 +153,7 @@ sns.despine(right=False)
plt.ylabel('colony yield')
ax.figure.legend();
```
![superimposed plots](../../../../translated_images/zh-MO/dual-line.a4c28ce659603fab2c003f4df816733df2bf41d1facb7de27989ec9afbf01b33.png)
![superimposed plots](../../../../translated_images/zh-MO/dual-line.a4c28ce659603fab.webp)
雖然在2003年沒有明顯的異常但這讓我們以一個稍微樂觀的結論結束這節課儘管蜂群數量總體上在下降但蜂群數量正在穩定即使每群產量在減少。

@ -58,7 +58,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
```
在這裡,您安裝了 `ggplot2` 套件,然後使用 `library("ggplot2")` 命令將其導入工作區。要在 ggplot 中繪製任何圖表,使用 `ggplot()` 函數並指定數據集、x 和 y 變數作為屬性。在此情況下,我們使用 `geom_line()` 函數,因為我們的目標是繪製折線圖。
![MaxWingspan-lineplot](../../../../../translated_images/zh-MO/MaxWingspan-lineplot.b12169f99d26fdd263f291008dfd73c18a4ba8f3d32b1fda3d74af51a0a28616.png)
![MaxWingspan-lineplot](../../../../../translated_images/zh-MO/MaxWingspan-lineplot.b12169f99d26fdd2.webp)
您立即注意到什麼似乎至少有一個異常值——那是一個相當大的翼展2000+ 公分的翼展超過了 20 公尺——明尼蘇達州有翼龍在飛嗎?讓我們調查一下。
@ -76,7 +76,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
```
我們在 `theme` 中指定了角度,並在 `xlab()``ylab()` 中分別指定了 x 和 y 軸標籤。`ggtitle()` 為圖表/圖形命名。
![MaxWingspan-lineplot-improved](../../../../../translated_images/zh-MO/MaxWingspan-lineplot-improved.04b73b4d5a59552a6bc7590678899718e1f065abe9eada9ebb4148939b622fd4.png)
![MaxWingspan-lineplot-improved](../../../../../translated_images/zh-MO/MaxWingspan-lineplot-improved.04b73b4d5a59552a.webp)
即使將標籤的旋轉設置為 45 度,仍然有太多標籤難以閱讀。讓我們嘗試另一種策略:僅標記那些異常值並在圖表內設置標籤。您可以使用散點圖來為標籤留出更多空間:
@ -92,7 +92,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
您發現了什麼?
![MaxWingspan-scatterplot](../../../../../translated_images/zh-MO/MaxWingspan-scatterplot.60dc9e0e19d32700283558f253841fdab5104abb62bc96f7d97f9c0ee857fa8b.png)
![MaxWingspan-scatterplot](../../../../../translated_images/zh-MO/MaxWingspan-scatterplot.60dc9e0e19d32700.webp)
## 篩選數據
@ -111,7 +111,7 @@ ggplot(data=birds_filtered, aes(x=Name, y=MaxWingspan,group=1)) +
```
我們創建了一個新的數據框 `birds_filtered`,然後繪製了一個散點圖。通過篩選掉異常值,您的數據現在更加一致且易於理解。
![MaxWingspan-scatterplot-improved](../../../../../translated_images/zh-MO/MaxWingspan-scatterplot-improved.7d0af81658c65f3e75b8fedeb2335399e31108257e48db15d875ece608272051.png)
![MaxWingspan-scatterplot-improved](../../../../../translated_images/zh-MO/MaxWingspan-scatterplot-improved.7d0af81658c65f3e.webp)
現在我們至少在翼展方面有了一個更乾淨的數據集,讓我們進一步探索這些鳥類。
@ -154,7 +154,7 @@ birds_filtered %>% group_by(Category) %>%
```
在以下代碼片段中,我們安裝了 [dplyr](https://www.rdocumentation.org/packages/dplyr/versions/0.7.8) 和 [lubridate](https://www.rdocumentation.org/packages/lubridate/versions/1.8.0) 套件,以幫助操作和分組數據以繪製堆疊條形圖。首先,您按鳥類的 `Category` 分組數據,然後總結 `MinLength`、`MaxLength`、`MinBodyMass`、`MaxBodyMass`、`MinWingspan`、`MaxWingspan` 列。接著,使用 `ggplot2` 套件繪製條形圖並指定不同類別的顏色和標籤。
![Stacked bar chart](../../../../../translated_images/zh-MO/stacked-bar-chart.0c92264e89da7b391a7490224d1e7059a020e8b74dcd354414aeac78871c02f1.png)
![Stacked bar chart](../../../../../translated_images/zh-MO/stacked-bar-chart.0c92264e89da7b39.webp)
然而,這個條形圖因為有太多未分組的數據而難以閱讀。您需要選擇僅想要繪製的數據,因此讓我們看看基於鳥類類別的鳥類長度。
@ -169,7 +169,7 @@ ggplot(birds_count,aes(Category,n))+geom_bar(stat="identity")+coord_flip()
```
您首先計算 `Category` 列中的唯一值,然後將它們排序到新的數據框 `birds_count` 中。這些排序後的數據在相同層次中進行分級,以便按排序方式繪製。使用 `ggplot2`,您接著繪製條形圖。`coord_flip()` 則繪製水平條形圖。
![category-length](../../../../../translated_images/zh-MO/category-length.7e34c296690e85d64f7e4d25a56077442683eca96c4f5b4eae120a64c0755636.png)
![category-length](../../../../../translated_images/zh-MO/category-length.7e34c296690e85d6.webp)
這個條形圖很好地展示了每個類別中鳥類的數量。一眼就能看出,在這個地區最多的鳥類是鴨/鵝/水禽類別。明尼蘇達州是“萬湖之地”,所以這並不令人驚訝!
@ -192,7 +192,7 @@ ggplot(birds_grouped,aes(Category,MaxLength))+geom_bar(stat="identity")+coord_fl
```
我們按 `Category` 分組 `birds_filtered` 數據,然後繪製條形圖。
![comparing data](../../../../../translated_images/zh-MO/comparingdata.f486a450d61c7ca5416f27f3f55a6a4465d00df3be5e6d33936e9b07b95e2fdd.png)
![comparing data](../../../../../translated_images/zh-MO/comparingdata.f486a450d61c7ca5.webp)
這裡沒有什麼令人驚訝的:蜂鳥的最大長度比鵜鶘或鵝要小得多。當數據符合邏輯時,這是件好事!
@ -204,7 +204,7 @@ ggplot(data=birds_grouped, aes(x=Category)) +
geom_bar(aes(y=MinLength), stat="identity", position="identity", fill='orange')+
coord_flip()
```
![super-imposed values](../../../../../translated_images/zh-MO/superimposed-values.5363f0705a1da4167625a373a1064331ea3cb7a06a297297d0734fcc9b3819a0.png)
![super-imposed values](../../../../../translated_images/zh-MO/superimposed-values.5363f0705a1da416.webp)
## 🚀 挑戰

@ -36,7 +36,7 @@ ggplot(data=birds_filtered, aes(x=Order, y=MaxLength,group=1)) +
geom_point() +
ggtitle("Max Length per order") + coord_flip()
```
![每目最大長度](../../../../../translated_images/zh-MO/max-length-per-order.e5b283d952c78c12b091307c5d3cf67132dad6fefe80a073353b9dc5c2bd3eb8.png)
![每目最大長度](../../../../../translated_images/zh-MO/max-length-per-order.e5b283d952c78c12.webp)
這提供了每個鳥類目的一般身體長度分佈概況,但這並不是顯示真實分佈的最佳方式。通常使用直方圖來完成這項任務。
## 使用直方圖
@ -47,7 +47,7 @@ ggplot(data=birds_filtered, aes(x=Order, y=MaxLength,group=1)) +
ggplot(data = birds_filtered, aes(x = MaxBodyMass)) +
geom_histogram(bins=10)+ylab('Frequency')
```
![整個數據集的分佈](../../../../../translated_images/zh-MO/distribution-over-the-entire-dataset.d22afd3fa96be854e4c82213fedec9e3703cba753d07fad4606aadf58cf7e78e.png)
![整個數據集的分佈](../../../../../translated_images/zh-MO/distribution-over-the-entire-dataset.d22afd3fa96be854.webp)
如你所見,這個數據集中的 400 多種鳥類大多數最大體重都低於 2000。通過將 `bins` 參數更改為更高的數字,例如 30可以獲得更多的洞察
@ -55,7 +55,7 @@ ggplot(data = birds_filtered, aes(x = MaxBodyMass)) +
ggplot(data = birds_filtered, aes(x = MaxBodyMass)) + geom_histogram(bins=30)+ylab('Frequency')
```
![30個區間的分佈](../../../../../translated_images/zh-MO/distribution-30bins.6a3921ea7a421bf71f06bf5231009e43d1146f1b8da8dc254e99b5779a4983e5.png)
![30個區間的分佈](../../../../../translated_images/zh-MO/distribution-30bins.6a3921ea7a421bf7.webp)
此圖表以更細緻的方式顯示了分佈。通過確保僅選擇特定範圍內的數據,可以創建一個不那麼偏向左側的圖表:
@ -67,7 +67,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_histogram(bins=30)+ylab('Frequency')
```
![篩選後的直方圖](../../../../../translated_images/zh-MO/filtered-histogram.6bf5d2bfd82533220e1bd4bc4f7d14308f43746ed66721d9ec8f460732be6674.png)
![篩選後的直方圖](../../../../../translated_images/zh-MO/filtered-histogram.6bf5d2bfd8253322.webp)
✅ 嘗試其他篩選條件和數據點。要查看數據的完整分佈,移除 `['MaxBodyMass']` 篩選器以顯示標籤分佈。
@ -81,7 +81,7 @@ ggplot(data=birds_filtered_1, aes(x=MaxBodyMass, y=MaxLength) ) +
```
沿著預期的軸,這兩個元素之間似乎存在預期的相關性,其中有一個特別強的收斂點:
![2D 圖表](../../../../../translated_images/zh-MO/2d-plot.c504786f439bd7ebceebf2465c70ca3b124103e06c7ff7214bf24e26f7aec21e.png)
![2D 圖表](../../../../../translated_images/zh-MO/2d-plot.c504786f439bd7eb.webp)
直方圖默認適用於數值型數據。如果你需要查看基於文本數據的分佈該怎麼辦?
## 使用文本數據探索數據集的分佈
@ -112,7 +112,7 @@ ggplot(data=birds_filtered_1, aes(x = MinWingspan, fill = ConservationStatus)) +
scale_fill_manual(name="Conservation Status",values=c("red","green","blue","pink"),labels=c("Endangered","Near Threathened","Vulnerable","Least Concern"))
```
![翼展與保育狀態的對比](../../../../../translated_images/zh-MO/wingspan-conservation-collation.4024e9aa6910866aa82f0c6cb6a6b4b925bd10079e6b0ef8f92eefa5a6792f76.png)
![翼展與保育狀態的對比](../../../../../translated_images/zh-MO/wingspan-conservation-collation.4024e9aa6910866a.webp)
最小翼展和保育狀態之間似乎沒有良好的相關性。使用此方法測試數據集的其他元素。你可以嘗試不同的篩選條件。你是否發現了任何相關性?
@ -126,7 +126,7 @@ ggplot(data=birds_filtered_1, aes(x = MinWingspan, fill = ConservationStatus)) +
ggplot(data = birds_filtered_1, aes(x = MinWingspan)) +
geom_density()
```
![密度圖](../../../../../translated_images/zh-MO/density-plot.675ccf865b76c690487fb7f69420a8444a3515f03bad5482886232d4330f5c85.png)
![密度圖](../../../../../translated_images/zh-MO/density-plot.675ccf865b76c690.webp)
你可以看到該圖表反映了之前的最小翼展數據;它只是稍微平滑了一些。如果你想重新訪問第二個圖表中那條鋸齒狀的最大體重線,可以通過使用此方法非常好地將其平滑化:
@ -134,7 +134,7 @@ ggplot(data = birds_filtered_1, aes(x = MinWingspan)) +
ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_density()
```
![體重密度](../../../../../translated_images/zh-MO/bodymass-smooth.d31ce526d82b0a1f19a073815dea28ecfbe58145ec5337e4ef7e8cdac81120b3.png)
![體重密度](../../../../../translated_images/zh-MO/bodymass-smooth.d31ce526d82b0a1f.webp)
如果你想要一條平滑但不過於平滑的線,可以編輯 `adjust` 參數:
@ -142,7 +142,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_density(adjust = 1/5)
```
![較不平滑的體重密度](../../../../../translated_images/zh-MO/less-smooth-bodymass.10f4db8b683cc17d17b2d33f22405413142004467a1493d416608dafecfdee23.png)
![較不平滑的體重密度](../../../../../translated_images/zh-MO/less-smooth-bodymass.10f4db8b683cc17d.webp)
✅ 閱讀此類圖表可用的參數並進行實驗!
@ -152,7 +152,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
ggplot(data=birds_filtered_1,aes(x = MaxBodyMass, fill = Order)) +
geom_density(alpha=0.5)
```
![每目體重密度](../../../../../translated_images/zh-MO/bodymass-per-order.9d2b065dd931b928c839d8cdbee63067ab1ae52218a1b90717f4bc744354f485.png)
![每目體重密度](../../../../../translated_images/zh-MO/bodymass-per-order.9d2b065dd931b928.webp)
## 🚀 挑戰

@ -84,7 +84,7 @@ pie(grouped$count,grouped$class, main="Edible?")
```
完成了,一個圓餅圖展示了根據這兩類蘑菇的數據比例。正確排列標籤的順序非常重要,尤其是在這裡,因此請務必確認標籤數組的構建順序!
![圓餅圖](../../../../../translated_images/zh-MO/pie1-wb.685df063673751f4b0b82127f7a52c7f9a920192f22ae61ad28412ba9ace97bf.png)
![圓餅圖](../../../../../translated_images/zh-MO/pie1-wb.685df063673751f4.webp)
## 甜甜圈圖!
@ -119,7 +119,7 @@ library(webr)
PieDonut(habitat, aes(habitat, count=count))
```
![甜甜圈圖](../../../../../translated_images/zh-MO/donut-wb.34e6fb275da9d834c2205145e39a3de9b6878191dcdba6f7a9e85f4b520449bc.png)
![甜甜圈圖](../../../../../translated_images/zh-MO/donut-wb.34e6fb275da9d834.webp)
這段代碼使用了兩個庫——ggplot2 和 webr。使用 webr 庫的 PieDonut 函數,我們可以輕鬆創建甜甜圈圖!
@ -157,7 +157,7 @@ waffle((cap_color$count/10), rows = 7, title = "Waffle Chart")+scale_fill_manual
使用華夫圖,你可以清楚地看到這個蘑菇數據集中帽顏色的比例。有趣的是,有許多綠色帽子的蘑菇!
![華夫圖](../../../../../translated_images/zh-MO/waffle.aaa75c5337735a6ef32ace0ffb6506ef49e5aefe870ffd72b1bb080f4843c217.png)
![華夫圖](../../../../../translated_images/zh-MO/waffle.aaa75c5337735a6e.webp)
在這節課中,你學到了三種視覺化比例的方法。首先,你需要將數據分組到分類中,然後決定哪種方式最適合展示數據——圓餅圖、甜甜圈圖或華夫圖。這些方法都很有趣,並能讓用戶快速了解數據集。

@ -42,7 +42,7 @@ library(ggplot2)
ggplot(honey, aes(x = priceperlb, y = state)) +
geom_point(colour = "blue")
```
![scatterplot 1](../../../../../translated_images/zh-MO/scatter1.86b8900674d88b26dd3353a83fe604e9ab3722c4680cc40ee9beb452ff02cdea.png)
![scatterplot 1](../../../../../translated_images/zh-MO/scatter1.86b8900674d88b26.webp)
現在,使用蜂蜜色彩方案展示價格如何隨年份演變。您可以通過添加 'scale_color_gradientn' 參數來展示年份的變化:
@ -52,7 +52,7 @@ ggplot(honey, aes(x = priceperlb, y = state)) +
ggplot(honey, aes(x = priceperlb, y = state, color=year)) +
geom_point()+scale_color_gradientn(colours = colorspace::heat_hcl(7))
```
![scatterplot 2](../../../../../translated_images/zh-MO/scatter2.4d1cbc693bad20e2b563888747eb6bdf65b73ce449d903f7cd4068a78502dcff.png)
![scatterplot 2](../../../../../translated_images/zh-MO/scatter2.4d1cbc693bad20e2.webp)
通過這種色彩方案的改變,您可以明顯看到蜂蜜每磅價格在多年來的強烈增長趨勢。事實上,如果您查看數據中的樣本集(例如選擇亞利桑那州),您可以看到價格逐年上漲的模式,僅有少數例外:
@ -83,7 +83,7 @@ ggplot(honey, aes(x = priceperlb, y = state)) +
```
您可以看到點的大小逐漸增大。
![scatterplot 3](../../../../../translated_images/zh-MO/scatter3.722d21e6f20b3ea2e18339bb9b10d75906126715eb7d5fdc88fe74dcb6d7066a.png)
![scatterplot 3](../../../../../translated_images/zh-MO/scatter3.722d21e6f20b3ea2.webp)
這是否是一個簡單的供需問題?由於氣候變化和蜂群崩潰等因素,是否每年可供購買的蜂蜜減少,導致價格上漲?
@ -98,7 +98,7 @@ qplot(honey$year,honey$priceperlb, geom='smooth', span =0.5, xlab = "year",ylab
```
答案是的但在2003年左右有一些例外
![line chart 1](../../../../../translated_images/zh-MO/line1.299b576fbb2a59e60a59e7130030f59836891f90302be084e4e8d14da0562e2a.png)
![line chart 1](../../../../../translated_images/zh-MO/line1.299b576fbb2a59e6.webp)
問題那麼在2003年我們是否也能看到蜂蜜供應的激增如果您查看總產量逐年變化呢
@ -106,7 +106,7 @@ qplot(honey$year,honey$priceperlb, geom='smooth', span =0.5, xlab = "year",ylab
qplot(honey$year,honey$totalprod, geom='smooth', span =0.5, xlab = "year",ylab = "totalprod")
```
![line chart 2](../../../../../translated_images/zh-MO/line2.3b18fcda7176ceba5b6689eaaabb817d49c965e986f11cac1ae3f424030c34d8.png)
![line chart 2](../../../../../translated_images/zh-MO/line2.3b18fcda7176ceba.webp)
答案:並不完全。如果您查看總產量,實際上在那一年似乎有所增加,儘管總體而言蜂蜜的生產量在這些年中呈下降趨勢。
@ -126,7 +126,7 @@ ggplot(honey, aes(x=yieldpercol, y = numcol,group = 1)) +
```
在此視覺化中您可以比較每群產量和蜂群數量逐年變化並將列數設置為3
![facet grid](../../../../../translated_images/zh-MO/facet.491ad90d61c2a7cc69b50c929f80786c749e38217ccedbf1e22ed8909b65987c.png)
![facet grid](../../../../../translated_images/zh-MO/facet.491ad90d61c2a7cc.webp)
對於此數據集,逐年和逐州比較蜂群數量和每群產量,並未顯示出特別突出的情況。是否有其他方式來尋找這兩個變量之間的相關性?
@ -143,7 +143,7 @@ plot(honey$year, honey$yieldpercol, pch = 17, col = 3,
axis(side = 4, at = pretty(range(y2)))
mtext("colony yield", side = 4, line = 3)
```
![superimposed plots](../../../../../translated_images/zh-MO/dual-line.fc4665f360a54018d7df9bc6abcc26460112e17dcbda18d3b9ae6109b32b36c3.png)
![superimposed plots](../../../../../translated_images/zh-MO/dual-line.fc4665f360a54018.webp)
雖然在2003年並未有明顯的異常但這讓我們可以以一個稍微樂觀的結論結束本課儘管蜂群數量總體上在下降但蜂群數量正在穩定即使每群產量在減少。

@ -38,25 +38,25 @@
即使數據科學家謹慎選擇了合適的圖表類型,數據仍然可能以某種方式被展示來支持某種觀點,往往以犧牲數據本身為代價。有許多誤導性圖表和信息圖的例子!
[![Alberto Cairo 的《How Charts Lie》](../../../../../translated_images/zh-MO/tornado.2880ffc7f135f82b5e5328624799010abefd1080ae4b7ecacbdc7d792f1d8849.png)](https://www.youtube.com/watch?v=oX74Nge8Wkw "How charts lie")
[![Alberto Cairo 的《How Charts Lie》](../../../../../translated_images/zh-MO/tornado.2880ffc7f135f82b.webp)](https://www.youtube.com/watch?v=oX74Nge8Wkw "How charts lie")
> 🎥 點擊上方圖片觀看有關誤導性圖表的會議演講
這張圖表反轉了 X 軸,根據日期顯示了與事實相反的內容:
![糟糕的圖表 1](../../../../../translated_images/zh-MO/bad-chart-1.596bc93425a8ac301a28b8361f59a970276e7b961658ce849886aa1fed427341.png)
![糟糕的圖表 1](../../../../../translated_images/zh-MO/bad-chart-1.596bc93425a8ac30.webp)
[這張圖表](https://media.firstcoastnews.com/assets/WTLV/images/170ae16f-4643-438f-b689-50d66ca6a8d8/170ae16f-4643-438f-b689-50d66ca6a8d8_1140x641.jpg) 更具誤導性,因為人們的目光會被吸引到右側,得出隨時間推移各縣的 COVID 病例數下降的結論。事實上,如果仔細查看日期,你會發現日期被重新排列以製造出誤導性的下降趨勢。
![糟糕的圖表 2](../../../../../translated_images/zh-MO/bad-chart-2.62edf4d2f30f4e519f5ef50c07ce686e27b0196a364febf9a4d98eecd21f9f60.jpg)
![糟糕的圖表 2](../../../../../translated_images/zh-MO/bad-chart-2.62edf4d2f30f4e51.webp)
這個臭名昭著的例子使用顏色和翻轉的 Y 軸來誤導:原本應該得出槍支友好立法通過後槍支死亡率激增的結論,事實上卻讓人誤以為情況正好相反:
![糟糕的圖表 3](../../../../../translated_images/zh-MO/bad-chart-3.e201e2e915a230bc2cde289110604ec9abeb89be510bd82665bebc1228258972.jpg)
![糟糕的圖表 3](../../../../../translated_images/zh-MO/bad-chart-3.e201e2e915a230bc.webp)
這張奇怪的圖表展示了比例如何被操控,效果令人捧腹:
![糟糕的圖表 4](../../../../../translated_images/zh-MO/bad-chart-4.8872b2b881ffa96c3e0db10eb6aed7793efae2cac382c53932794260f7bfff07.jpg)
![糟糕的圖表 4](../../../../../translated_images/zh-MO/bad-chart-4.8872b2b881ffa96c.webp)
比較不可比的事物是另一種不正當的手段。有一個[精彩的網站](https://tylervigen.com/spurious-correlations)專門展示「虛假的相關性」,例如緬因州的離婚率與人造奶油的消耗量之間的「事實」相關性。一個 Reddit 群組也收集了[糟糕的數據使用](https://www.reddit.com/r/dataisugly/top/?t=all)。
@ -91,13 +91,13 @@
如果你的數據在 X 軸上是文本且冗長,可以將文本角度調整以提高可讀性。[plot3D](https://cran.r-project.org/web/packages/plot3D/index.html) 提供了 3D 繪圖功能,如果你的數據支持它,可以使用它製作更高級的數據視覺化。
![3D 圖表](../../../../../translated_images/zh-MO/3d.db1734c151eee87d924989306a00e23f8cddac6a0aab122852ece220e9448def.png)
![3D 圖表](../../../../../translated_images/zh-MO/3d.db1734c151eee87d.webp)
## 動畫和 3D 圖表展示
如今一些最好的數據視覺化是動畫化的。Shirley Wu 使用 D3 創作了令人驚嘆的作品,例如「[電影之花](http://bl.ocks.org/sxywu/raw/d612c6c653fb8b4d7ff3d422be164a5d/)」每朵花都是一部電影的視覺化。另一個例子是《衛報》的「Bussed Out」這是一個結合 Greensock 和 D3 的視覺化和滾動敘事文章格式的互動體驗,展示了紐約市如何通過將無家可歸者送出城市來處理其無家可歸問題。
![Bussed Out](../../../../../translated_images/zh-MO/busing.8157cf1bc89a3f65052d362a78c72f964982ceb9dcacbe44480e35909c3dce62.png)
![Bussed Out](../../../../../translated_images/zh-MO/busing.8157cf1bc89a3f65.webp)
> 「Bussed Out: How America Moves its Homeless」來自[衛報](https://www.theguardian.com/us-news/ng-interactive/2017/dec/20/bussed-out-america-moves-homeless-people-country-study)。視覺化由 Nadieh Bremer 和 Shirley Wu 創作
@ -107,7 +107,7 @@
你將完成一個網頁應用,展示這個社交網絡的動畫化視圖。它使用了一個庫,該庫旨在使用 Vue.js 和 D3 創建[網絡視覺化](https://github.com/emiliorizzo/vue-d3-network)。當應用運行時,你可以在屏幕上拖動節點來重新排列數據。
![危險關係](../../../../../translated_images/zh-MO/liaisons.90ce7360bcf8476558f700bbbaf198ad697d5b5cb2829ba141a89c0add7c6ecd.png)
![危險關係](../../../../../translated_images/zh-MO/liaisons.90ce7360bcf84765.webp)
## 專案:使用 D3.js 建立一個展示網絡的圖表

@ -1,6 +1,6 @@
# 視覺化
![一隻蜜蜂停在薰衣草花上](../../../translated_images/zh-MO/bee.0aa1d91132b12e3a8994b9ca12816d05ce1642010d9b8be37f8d37365ba845cf.jpg)
![一隻蜜蜂停在薰衣草花上](../../../translated_images/zh-MO/bee.0aa1d91132b12e3a.webp)
> 照片由 <a href="https://unsplash.com/@jenna2980?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Jenna Lee</a> 提供,來源於 <a href="https://unsplash.com/s/photos/bees-in-a-meadow?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
視覺化數據是數據科學家最重要的任務之一。圖片勝過千言萬語,視覺化可以幫助你識別數據中的各種有趣部分,例如峰值、異常值、分組、趨勢等,這些都能幫助你理解數據背後的故事。

@ -16,7 +16,7 @@
本課程將重點放在生命週期的三個部分:資料捕捉、資料處理和資料維護。
![資料科學生命週期圖示](../../../../translated_images/zh-MO/data-science-lifecycle.a1e362637503c4fb0cd5e859d7552edcdb4aa629a279727008baa121f2d33f32.jpg)
![資料科學生命週期圖示](../../../../translated_images/zh-MO/data-science-lifecycle.a1e362637503c4fb.webp)
> 圖片來源:[Berkeley School of Information](https://ischoolonline.berkeley.edu/data-science/what-is-data-science/)
## 資料捕捉
@ -89,7 +89,7 @@
|團隊資料科學過程 (TDSP)|跨行業標準資料挖掘過程 (CRISP-DM)|
|--|--|
|![團隊資料科學生命週期](../../../../translated_images/zh-MO/tdsp-lifecycle2.e19029d598e2e73d5ef8a4b98837d688ec6044fe332c905d4dbb69eb6d5c1d96.png) | ![資料科學過程聯盟圖示](../../../../translated_images/zh-MO/CRISP-DM.8bad2b4c66e62aa75278009e38e3e99902c73b0a6f63fd605a67c687a536698c.png) |
|![團隊資料科學生命週期](../../../../translated_images/zh-MO/tdsp-lifecycle2.e19029d598e2e73d.webp) | ![資料科學過程聯盟圖示](../../../../translated_images/zh-MO/CRISP-DM.8bad2b4c66e62aa7.webp) |
| 圖片來源:[Microsoft](https://docs.microsoft.comazure/architecture/data-science-process/lifecycle) | 圖片來源:[Data Science Process Alliance](https://www.datascience-pm.com/crisp-dm-2/) |
## [課後測驗](https://ff-quizzes.netlify.app/en/ds/quiz/27)

@ -1,6 +1,6 @@
# 數據科學生命週期
![communication](../../../translated_images/zh-MO/communication.06d8e2a88d30d168d661ad9f9f0a4f947ebff3719719cfdaf9ed00a406a01ead.jpg)
![communication](../../../translated_images/zh-MO/communication.06d8e2a88d30d168.webp)
> 圖片由 <a href="https://unsplash.com/@headwayio?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Headway</a> 提供,來自 <a href="https://unsplash.com/s/photos/communication?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,您將探索數據科學生命週期的一些方面,包括數據的分析和溝通。

@ -1,12 +1,12 @@
# 雲端中的數據科學
![cloud-picture](../../../translated_images/zh-MO/cloud-picture.f5526de3c6c6387b2d656ba94f019b3352e5e3854a78440e4fb00c93e2dea675.jpg)
![cloud-picture](../../../translated_images/zh-MO/cloud-picture.f5526de3c6c6387b.webp)
> 圖片來源:[Jelleke Vanooteghem](https://unsplash.com/@ilumire) 來自 [Unsplash](https://unsplash.com/s/photos/cloud?orientation=landscape)
當涉及到使用大數據進行數據科學時,雲端可以成為改變遊戲規則的關鍵。在接下來的三節課中,我們將了解什麼是雲端以及為什麼它非常有用。我們還將探索一個心臟衰竭數據集,並建立一個模型來幫助評估某人發生心臟衰竭的可能性。我們將利用雲端的強大功能來訓練、部署和以兩種不同的方式使用模型。一種方式是僅使用用戶界面,以低代碼/無代碼的方式進行;另一種方式是使用 Azure Machine Learning Software Developer Kit (Azure ML SDK)。
![project-schema](../../../translated_images/zh-MO/project-schema.420e56d495624541eaecf2b737f138c86fb7d8162bb1c0bf8783c350872ffc4d.png)
![project-schema](../../../translated_images/zh-MO/project-schema.420e56d495624541.webp)
### 主題

@ -32,7 +32,7 @@
* [醫療保健中的數據科學](https://data-flair.training/blogs/data-science-in-healthcare/) - 強調應用如醫學影像(例如 MRI、X光、CT掃描、基因組學DNA測序、藥物開發風險評估、成功預測、預測分析患者護理和供應物流、疾病追蹤和預防等。
![數據科學在現實世界中的應用](../../../../translated_images/zh-MO/data-science-applications.4e5019cd8790ebac2277ff5f08af386f8727cac5d30f77727c7090677e6adb9c.png) 圖片來源:[Data Flair: 6 Amazing Data Science Applications ](https://data-flair.training/blogs/data-science-applications/)
![數據科學在現實世界中的應用](../../../../translated_images/zh-MO/data-science-applications.4e5019cd8790ebac.webp) 圖片來源:[Data Flair: 6 Amazing Data Science Applications ](https://data-flair.training/blogs/data-science-applications/)
該圖展示了其他領域和應用數據科學技術的例子。想探索更多應用?請查看下面的[回顧與自學](../../../../6-Data-Science-In-Wild/20-Real-World-Examples)部分。

@ -13,7 +13,7 @@ Explorer界面如下圖所示允許您選擇一個數據集從提供的
2. 探索數據集[目錄](https://planetarycomputer.microsoft.com/catalog)——了解每個數據集的用途。
3. 使用Explorer——選擇一個您感興趣的數據集選擇相關的查詢和渲染選項。
![行星電腦Explorer](../../../../translated_images/zh-MO/planetary-computer-explorer.c1e95a9b053167d64e2e8e4347cfb689e47e2037c33103fc1bbea1a149d4f85b.png)
![行星電腦Explorer](../../../../translated_images/zh-MO/planetary-computer-explorer.c1e95a9b053167d6.webp)
`您的任務:`
現在,研究瀏覽器中渲染的可視化,並回答以下問題:

@ -1,252 +1,264 @@
# Data Science for Beginners - 一份課程大綱
# 初學者數據科學課程綱要
[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=344191198)
[![在 GitHub Codespaces 開啟](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=344191198)
[![GitHub license](https://img.shields.io/github/license/microsoft/Data-Science-For-Beginners.svg)](https://github.com/microsoft/Data-Science-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Data-Science-For-Beginners.svg)](https://GitHub.com/microsoft/Data-Science-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/Data-Science-For-Beginners.svg)](https://GitHub.com/microsoft/Data-Science-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Data-Science-For-Beginners.svg)](https://GitHub.com/microsoft/Data-Science-For-Beginners/pulls/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub 授權](https://img.shields.io/github/license/microsoft/Data-Science-For-Beginners.svg)](https://github.com/microsoft/Data-Science-For-Beginners/blob/master/LICENSE)
[![GitHub 貢獻者](https://img.shields.io/github/contributors/microsoft/Data-Science-For-Beginners.svg)](https://GitHub.com/microsoft/Data-Science-For-Beginners/graphs/contributors/)
[![GitHub 問題](https://img.shields.io/github/issues/microsoft/Data-Science-For-Beginners.svg)](https://GitHub.com/microsoft/Data-Science-For-Beginners/issues/)
[![GitHub 拉取請求](https://img.shields.io/github/issues-pr/microsoft/Data-Science-For-Beginners.svg)](https://GitHub.com/microsoft/Data-Science-For-Beginners/pulls/)
[![歡迎 PR](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Data-Science-For-Beginners.svg?style=social&label=Watch)](https://GitHub.com/microsoft/Data-Science-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/Data-Science-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Data-Science-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/Data-Science-For-Beginners.svg?style=social&label=Star)](https://GitHub.com/microsoft/Data-Science-For-Beginners/stargazers/)
[![GitHub 觀察者](https://img.shields.io/github/watchers/microsoft/Data-Science-For-Beginners.svg?style=social&label=Watch)](https://GitHub.com/microsoft/Data-Science-For-Beginners/watchers/)
[![GitHub 派生](https://img.shields.io/github/forks/microsoft/Data-Science-For-Beginners.svg?style=social&label=Fork)](https://GitHub.com/microsoft/Data-Science-For-Beginners/network/)
[![GitHub 星標](https://img.shields.io/github/stars/microsoft/Data-Science-For-Beginners.svg?style=social&label=Star)](https://GitHub.com/microsoft/Data-Science-For-Beginners/stargazers/)
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
[![Microsoft Foundry 開發者論壇](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
微軟 Azure Cloud Advocates 很高興能提供一份為期 10 週、包含 20 課的資料科學課程大綱。每課都包含課前及課後小測、完成課程的文字指示、解答及作業。我們以專案為本的教學法讓你在實作中學習,這是讓新技能紮根的有效方式。
微軟的 Azure Cloud Advocates 很高興提供一個為期10週、共20課的數據科學課程。每課包含課前及課後小測驗、完成課程的書面指引、解決方案和作業。我們採用基於項目的教學法讓你在實作中學習是讓新技能「牢記」的有效方式。
**誠摯感謝我們的作者** [Jasmine Greenaway](https://www.twitter.com/paladique), [Dmitry Soshnikov](http://soshnikov.com), [Nitya Narasimhan](https://twitter.com/nitya), [Jalen McGee](https://twitter.com/JalenMcG), [Jen Looper](https://twitter.com/jenlooper), [Maud Levy](https://twitter.com/maudstweets), [Tiffany Souterre](https://twitter.com/TiffanySouterre), [Christopher Harrison](https://www.twitter.com/geektrainer)。
**衷心感謝我們的作者們** [Jasmine Greenaway](https://www.twitter.com/paladique), [Dmitry Soshnikov](http://soshnikov.com), [Nitya Narasimhan](https://twitter.com/nitya), [Jalen McGee](https://twitter.com/JalenMcG), [Jen Looper](https://twitter.com/jenlooper), [Maud Levy](https://twitter.com/maudstweets), [Tiffany Souterre](https://twitter.com/TiffanySouterre), [Christopher Harrison](https://www.twitter.com/geektrainer)。
**🙏 特別感謝 🙏 我們的 [Microsoft Student Ambassador](https://studentambassadors.microsoft.com/) 作者、審核者及內容貢獻者,** 包括 Aaryan Arora, [Aditya Garg](https://github.com/AdityaGarg00), [Alondra Sanchez](https://www.linkedin.com/in/alondra-sanchez-molina/), [Ankita Singh](https://www.linkedin.com/in/ankitasingh007), [Anupam Mishra](https://www.linkedin.com/in/anupam--mishra/), [Arpita Das](https://www.linkedin.com/in/arpitadas01/), ChhailBihari Dubey, [Dibri Nsofor](https://www.linkedin.com/in/dibrinsofor), [Dishita Bhasin](https://www.linkedin.com/in/dishita-bhasin-7065281bb), [Majd Safi](https://www.linkedin.com/in/majd-s/), [Max Blum](https://www.linkedin.com/in/max-blum-6036a1186/), [Miguel Correa](https://www.linkedin.com/in/miguelmque/), [Mohamma Iftekher (Iftu) Ebne Jalal](https://twitter.com/iftu119), [Nawrin Tabassum](https://www.linkedin.com/in/nawrin-tabassum), [Raymond Wangsa Putra](https://www.linkedin.com/in/raymond-wp/), [Rohit Yadav](https://www.linkedin.com/in/rty2423), Samridhi Sharma, [Sanya Sinha](https://www.linkedin.com/mwlite/in/sanya-sinha-13aab1200),
[Sheena Narula](https://www.linkedin.com/in/sheena-narua-n/), [Tauqeer Ahmad](https://www.linkedin.com/in/tauqeerahmad5201/), Yogendrasingh Pawar , [Vidushi Gupta](https://www.linkedin.com/in/vidushi-gupta07/), [Jasleen Sondhi](https://www.linkedin.com/in/jasleen-sondhi/)
**🙏 特別感謝 🙏 我們的 [Microsoft 學生大使](https://studentambassadors.microsoft.com/) 作者、審核者和內容貢獻者,** 尤其是 Aaryan Arora、[Aditya Garg](https://github.com/AdityaGarg00)、[Alondra Sanchez](https://www.linkedin.com/in/alondra-sanchez-molina/)、[Ankita Singh](https://www.linkedin.com/in/ankitasingh007)、[Anupam Mishra](https://www.linkedin.com/in/anupam--mishra/)、[Arpita Das](https://www.linkedin.com/in/arpitadas01/)、ChhailBihari Dubey、[Dibri Nsofor](https://www.linkedin.com/in/dibrinsofor)、[Dishita Bhasin](https://www.linkedin.com/in/dishita-bhasin-7065281bb)、[Majd Safi](https://www.linkedin.com/in/majd-s/)、[Max Blum](https://www.linkedin.com/in/max-blum-6036a1186/)、[Miguel Correa](https://www.linkedin.com/in/miguelmque/)、[Mohamma Iftekher (Iftu) Ebne Jalal](https://twitter.com/iftu119)、[Nawrin Tabassum](https://www.linkedin.com/in/nawrin-tabassum)、[Raymond Wangsa Putra](https://www.linkedin.com/in/raymond-wp/)、[Rohit Yadav](https://www.linkedin.com/in/rty2423)、Samridhi Sharma、[Sanya Sinha](https://www.linkedin.com/mwlite/in/sanya-sinha-13aab1200)、
[Sheena Narula](https://www.linkedin.com/in/sheena-narua-n/)、[Tauqeer Ahmad](https://www.linkedin.com/in/tauqeerahmad5201/)、Yogendrasingh Pawar 、[Vidushi Gupta](https://www.linkedin.com/in/vidushi-gupta07/)、[Jasleen Sondhi](https://www.linkedin.com/in/jasleen-sondhi/)
|![Sketchnote by @sketchthedocs https://sketchthedocs.dev](../../translated_images/zh-MO/00-Title.8af36cd35da1ac55.webp)|
|![@sketchthedocs 繪製草圖筆記 https://sketchthedocs.dev](../../translated_images/zh-MO/00-Title.8af36cd35da1ac55.webp)|
|:---:|
| 初學者資料科學 - _手繪筆記由 [@nitya](https://twitter.com/nitya) 製作_ |
| 初學者數據科學 - _草圖筆記由 [@nitya](https://twitter.com/nitya) 繪製_ |
### 🌐 多語言支援
#### 透過 GitHub Action 支援(自動持續更新)
#### 透過 GitHub Action 支援(自動持續更新)
<!-- CO-OP TRANSLATOR LANGUAGES TABLE START -->
[阿拉伯語](../ar/README.md) | [孟加拉語](../bn/README.md) | [保加利亞語](../bg/README.md) | [緬甸語Myanmar](../my/README.md) | [中文(簡體)](../zh-CN/README.md) | [中文(繁體,香港)](../zh-HK/README.md) | [中文(繁體,澳門)](./README.md) | [中文(繁體,灣)](../zh-TW/README.md) | [克羅地亞語](../hr/README.md) | [捷克語](../cs/README.md) | [丹麥語](../da/README.md) | [荷蘭語](../nl/README.md) | [愛沙尼亞語](../et/README.md) | [芬蘭語](../fi/README.md) | [法語](../fr/README.md) | [德語](../de/README.md) | [希臘語](../el/README.md) | [希伯來語](../he/README.md) | [印地語](../hi/README.md) | [匈牙利語](../hu/README.md) | [尼語](../id/README.md) | [義大利語](../it/README.md) | [日語](../ja/README.md) | [坎納達語](../kn/README.md) | [韓語](../ko/README.md) | [立陶宛語](../lt/README.md) | [馬來語](../ms/README.md) | [馬拉雅拉姆語](../ml/README.md) | [馬拉地語](../mr/README.md) | [尼泊爾語](../ne/README.md) | [尼日利亞皮欽語](../pcm/README.md) | [挪威語](../no/README.md) | [波斯語(法爾西](../fa/README.md) | [波蘭語](../pl/README.md) | [葡萄牙語(巴西)](../pt-BR/README.md) | [葡萄牙語(葡萄牙)](../pt-PT/README.md) | [旁遮普語(Gurmukhi](../pa/README.md) | [羅馬尼亞語](../ro/README.md) | [俄語](../ru/README.md) | [塞爾維亞語(西里爾字母)](../sr/README.md) | [斯洛伐克語](../sk/README.md) | [斯洛文尼亞語](../sl/README.md) | [西班牙語](../es/README.md) | [斯瓦希里語](../sw/README.md) | [瑞典語](../sv/README.md) | [他加祿語(菲律賓語)](../tl/README.md) | [泰米爾語](../ta/README.md) | [泰盧固語](../te/README.md) | [泰語](../th/README.md) | [土耳其語](../tr/README.md) | [烏克蘭語](../uk/README.md) | [烏爾都語](../ur/README.md) | [越南語](../vi/README.md)
[阿拉伯語](../ar/README.md) | [孟加拉語](../bn/README.md) | [保加利亞語](../bg/README.md) | [緬甸語](../my/README.md) | [中文(簡體)](../zh-CN/README.md) | [中文(繁體,香港)](../zh-HK/README.md) | [中文(繁體,澳門)](./README.md) | [中文(繁體,灣)](../zh-TW/README.md) | [克羅地亞語](../hr/README.md) | [捷克語](../cs/README.md) | [丹麥語](../da/README.md) | [荷蘭語](../nl/README.md) | [愛沙尼亞語](../et/README.md) | [芬蘭語](../fi/README.md) | [法語](../fr/README.md) | [德語](../de/README.md) | [希臘語](../el/README.md) | [希伯來語](../he/README.md) | [印地語](../hi/README.md) | [匈牙利語](../hu/README.md) | [西亞語](../id/README.md) | [義大利語](../it/README.md) | [日語](../ja/README.md) | [坎納達語](../kn/README.md) | [韓語](../ko/README.md) | [立陶宛語](../lt/README.md) | [馬來語](../ms/README.md) | [馬拉雅拉姆語](../ml/README.md) | [馬拉地語](../mr/README.md) | [尼泊爾語](../ne/README.md) | [奈及利亞皮欽語](../pcm/README.md) | [挪威語](../no/README.md) | [波斯語(法爾西](../fa/README.md) | [波蘭語](../pl/README.md) | [葡萄牙語(巴西)](../pt-BR/README.md) | [葡萄牙語(葡萄牙)](../pt-PT/README.md) | [旁遮普語(古爾穆克希](../pa/README.md) | [羅馬尼亞語](../ro/README.md) | [俄語](../ru/README.md) | [塞爾維亞語(西里爾字母)](../sr/README.md) | [斯洛伐克語](../sk/README.md) | [斯洛文尼亞語](../sl/README.md) | [西班牙語](../es/README.md) | [斯瓦希里語](../sw/README.md) | [瑞典語](../sv/README.md) | [他加祿語(菲律賓語)](../tl/README.md) | [泰米爾語](../ta/README.md) | [泰盧固語](../te/README.md) | [泰語](../th/README.md) | [土耳其語](../tr/README.md) | [烏克蘭語](../uk/README.md) | [烏爾都語](../ur/README.md) | [越南語](../vi/README.md)
> **想要本地克隆?**
> 本儲存庫包含 50 多種語言翻譯,會大幅增加下載量。若想克隆但不含翻譯,請使用稀疏簽出:
> **想要本地端克隆?**
>
> 本儲存庫包含50餘種語言翻譯會大幅增加下載大小。若想不帶翻譯檔案克隆可使用稀疏檢出
>
> **Bash / macOS / Linux**
> ```bash
> git clone --filter=blob:none --sparse https://github.com/microsoft/Data-Science-For-Beginners.git
> cd Data-Science-For-Beginners
> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'
> ```
> 這樣你就可以用更快的下載速度取得所有完成課程所需的資料。
>
> **CMDWindows**
> ```cmd
> git clone --filter=blob:none --sparse https://github.com/microsoft/Data-Science-For-Beginners.git
> cd Data-Science-For-Beginners
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> 這樣讓你以更快的速度取得完成課程所需所有資源。
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**若您希望支持額外語言,請參閱[這裡](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
**如欲增加其他翻譯語言,請參閱此處列出的支援語言清單 [here](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
#### 加入我們的社區
#### 加入我們的社
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
我們有正在進行的 Discord AI 學習系列,詳細信息及加入請見 [Learn with AI Series](https://aka.ms/learnwithai/discord),活動時間為 2025 年 9 月 18 日至 30 日。你將會學習使用 GitHub Copilot 做資料科學的技巧與秘訣。
我們目前正在進行 Discord AI 學習系列,歡迎了解並於 2025 年 9 月 18 日至 30 日加入我們:[Learn with AI Series](https://aka.ms/learnwithai/discord)。你將學到使用 GitHub Copilot 進行數據科學的秘訣與技巧
![Learn with AI series](../../translated_images/zh-MO/1.2b28cdc6205e26fe.webp)
![Learn with AI 系列](../../translated_images/zh-MO/1.2b28cdc6205e26fe.webp)
# 你是學生嗎?
請先從以下資源開始
開始使用以下資源
- [學生中心頁面](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-77958-bethanycheum) 這頁面提供初學者資源、學生套件,甚至獲取免費認證券的途徑。這頁值得收藏並偶爾回來看看,因為內容每月至少調整一次。
- [Microsoft Learn 學生大使](https://studentambassadors.microsoft.com?WT.mc_id=academic-77958-bethanycheum) 加入全球學生大使社群,有可能是踏入微軟的契機
- [學生中心頁面](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-77958-bethanycheum) 在此頁面,你會找到初學者資源、學生包甚至免費證書兌換券的取得方式。這是你想要加入書籤並定期查看的頁面,因為我們至少每月更換內容一次。
- [Microsoft Learn 學生大使](https://studentambassadors.microsoft.com?WT.mc_id=academic-77958-bethanycheum) 加入全球學生大使社群,這可能是你進入微軟的橋樑
# 上手指南
# 入門指南
## 📚 文件
## 📚 文件資料
- **[安裝指南](INSTALLATION.md)** - 初學者一步步安裝教學
- **[使用指南](USAGE.md)** - 範例與常工作流程
- **[疑難排解](TROUBLESHOOTING.md)** - 常見問題解決方案
- **[貢獻指南](CONTRIBUTING.md)** - 如何對本專案做出貢獻
- **[教師資源](for-teachers.md)** - 教學指導與課堂資料
- **[安裝指南](INSTALLATION.md)** - 初學者的分步設定指引
- **[使用指南](USAGE.md)** - 範例與常工作流程
- **[故障排除](TROUBLESHOOTING.md)** - 常見問題解決方案
- **[貢獻指南](CONTRIBUTING.md)** - 如何參與此專案
- **[教師專區](for-teachers.md)** - 教學指導與課堂資源
## 👨‍🎓 學生專區
> **完全初學者**: 資料科學新手?請先從我們的[初學者友好範例](examples/README.md)開始!這些簡單且詳細註解的範例將幫助你在深入全課程前掌握基礎
> **[學生們](https://aka.ms/student-page)**欲自行使用課程,請 fork 整個倉庫並依序完成練習,從課前小測開始。閱讀講義並完成後續活動。建議以理解課程內容的方式完成專案,而非直接抄寫解答;不過每一專案導向課程的 /solutions 資料夾有完整解答碼。你也可以與朋友組成讀書會,共同研讀。欲進一步學習,我們推薦[Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/qprpajyoy3x0g7?WT.mc_id=academic-77958-bethanycheum)。
> **完全初學者**:剛開始接觸數據科學?請先從我們的 [初學者範例](examples/README.md) 開始!這些簡單且附有良好註解的範例,將幫助你在深入完整課程前,理解基本概念
> **[學生們](https://aka.ms/student-page)**想要自行使用本課程,請複製整個倉庫,並自行完成練習,從課前小測驗開始。然後閱讀課程並完成其他活動。盡量透過理解課程來創建專案,而非直接複製解答程式碼;不過每個基於專案的課程都在 /solutions 目錄備有程式碼。另一個方式是和朋友組成學習小組,一同進行內容。進一步學習我們推薦使用 [Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/qprpajyoy3x0g7?WT.mc_id=academic-77958-bethanycheum)。
**快速開始:**
1. 查看[安裝指南](INSTALLATION.md)以設置你的環境
2. 閱讀[使用指南](USAGE.md)學習如何使用課程材料
3. 從第一課開始,按順序進行
4. 加入我們的[Discord 社群](https://aka.ms/ds4beginners/discord)尋求幫助
1. 查看 [安裝指南](INSTALLATION.md) 以設定你的環境
2. 閱讀 [使用指南](USAGE.md)學習如何使用課程
3. 從第一課開始,按順序完成各課
4. 加入我們的 [Discord 社群](https://aka.ms/ds4beginners/discord) 尋求支援
## 👩‍🏫 教師專區
> **教師**:我們已[包含一些建議](for-teachers.md)說明如何使用此課程。歡迎您在[討論區](https://github.com/microsoft/Data-Science-For-Beginners/discussions)留下您的意見!
> **教師們**:我們提供了[一些教學建議](for-teachers.md),歡迎您在[討論區](https://github.com/microsoft/Data-Science-For-Beginners/discussions)留下您的反饋!
## 認識團隊
[![推廣影片](../../ds-for-beginners.gif)](https://youtu.be/8mzavjQSMM4 "推廣影片")
[![宣傳影片](../../ds-for-beginners.gif)](https://youtu.be/8mzavjQSMM4 "宣傳影片")
**動圖製作者** [Mohit Jaisal](https://www.linkedin.com/in/mohitjaisal)
**動圖** [Mohit Jaisal](https://www.linkedin.com/in/mohitjaisal) 製作
> 🎥 點擊上方圖片觀看關於此專案與創建團隊的影片!
> 🎥 點擊上方圖片觀看關於專案和創作者們的影片!
## 教學法
建立本課程時,我們選擇了兩個教學原則:確保課程以專案為基礎,並且包含頻繁的小測驗。透過這系列課程,學生將學習數據科學的基本原理,包括倫理概念、數據準備、不同的數據處理方式、數據視覺化、數據分析、數據科學的實際案例等等。
設計本課程時,我們選擇了兩個教學原則:確保課程以專案為基礎,並包含頻繁的測驗。到本系列課程結束時,學生將學會資料科學的基本原理,包括倫理概念、資料準備、不同的資料處理方式、資料視覺化、資料分析、資料科學的實際應用案例等。
此外課前一個低風險的小測驗能幫助學生設定學習該主題的目標課後的第二個小測驗則確保更好的記憶與吸收。本課程設計靈活且充滿趣味可全部或部分進行。專案從小規模開始逐漸變得更為複雜直至10週的學習周期結束
另外,課前的低壓力測驗可幫助學生設定學習主題的意圖,而課後的第二次測驗則確保持續記憶。此課程設計具彈性且有趣,可整體或部分學習。專案從簡單開始,並在十週的學習週期結束時逐漸增加難度
> 查閱我們的[行為守則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)、[翻譯指南](TRANSLATIONS.md)。歡迎您的建設性回饋!
> 請參閱我們的[行為準則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)、[翻譯指南](TRANSLATIONS.md)。歡迎您提供建設性的回饋!
## 每堂課包含:
- 選擇性的手繪筆記
- 選擇性的補充影片
- 課前熱身小測驗
- 課文講義
- 對於專案式課程,有一步步的專案製作指引
- 選的手繪筆記
- 選的補充影片
- 課前暖身測驗
- 書面課程
- 專案課程包含的逐步專案建置指引
- 知識檢測
- 挑戰題
- 補充閱讀資料
- 功課
- [課後測驗](https://ff-quizzes.netlify.app/en/)
- 補充閱讀
- 作業
- [課後測驗](https://ff-quizzes.netlify.app/en/)
> **關於測驗的小提示**:所有測驗都收納於 Quiz-App 資料夾總計40個測驗每個測驗含三個問題。測驗會從課程中連結但也可以在本地執行或部署至 Azure請參考 `quiz-app` 資料夾中的指示。這些測驗正逐步進行本地化。
> **關於測驗的說明**:所有測驗均位於 Quiz-App 資料夾中共有40個每個包含三個問題。測驗連結嵌入於課程中但測驗應用程式可本地執行或部署至 Azure請參考 `quiz-app` 資料夾中的說明。測驗正在逐步本地化。
## 🎓 初學者友善範例
**第一次接觸數據科學?** 我們創建了特別的[範例目錄](examples/README.md),提供簡單且註解詳盡的程式碼幫助您入門:
**剛接觸資料科學?** 我們建立了特殊的[範例目錄](examples/README.md),包含簡單且詳盡註解的程式碼幫助您入門:
- 🌟 **Hello World** - 您的第一個數據科學程式
- 📂 **資料載入** - 學習讀取探索資料集
- 📊 **簡單分析** - 計算統計數據並尋找模式
- 📈 **本視覺化** - 製作圖表與圖形
- 🔬 **實務專案** - 從頭到尾完工作流程
- 🌟 **Hello World** - 您的第一個資料科學程式
- 📂 **資料載入** - 學習讀取探索資料集
- 📊 **簡單分析** - 計算統計並尋找模式
- 📈 **礎視覺化** - 創建圖表與圖形
- 🔬 **實務專案** - 從頭到尾完工作流程
每個範例都包含詳盡的註解說明每一步,非常適合完全的新手!
每個範例均包含詳細註解解說每步驟,適合完全的新手!
👉 **[從範例開始](examples/README.md)** 👈
## 課程
## 課程列表
|![ @sketchthedocs 的手繪筆記 https://sketchthedocs.dev](../../translated_images/zh-MO/00-Roadmap.4905d6567dff4753.webp)|
|![ Sketchnote by @sketchthedocs https://sketchthedocs.dev](../../translated_images/zh-MO/00-Roadmap.4905d6567dff4753.webp)|
|:---:|
| 初學者數據科學課程地圖 - _手繪筆記由 [@nitya](https://twitter.com/nitya) 製作_ |
| 資料科學初學者:路線圖 - _手繪筆記由 [@nitya](https://twitter.com/nitya)_ |
| 課程編號 | 主題 | 課程分 | 學習目標 | 連結課程 | 作者 |
| 課程編號 | 主題 | 課程分 | 學習目標 | 連結課程 | 作者 |
| :-----------: | :----------------------------------------: | :--------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------: | :----: |
| 01 | 定義數據科學 | [介紹](1-Introduction/README.md) | 了解數據科學背後的基本概念,以及其與人工智能、機器學習及大數據的關係。 | [課程](1-Introduction/01-defining-data-science/README.md) [影片](https://youtu.be/beZ7Mb_oz9I) | [Dmitry](http://soshnikov.com) |
| 02 | 數據科學倫理 | [介紹](1-Introduction/README.md) | 數據倫理概念、挑戰和框架。 | [課程](1-Introduction/02-ethics/README.md) | [Nitya](https://twitter.com/nitya) |
| 03 | 定義數據 | [介紹](1-Introduction/README.md) | 瞭解數據如何分類及其常見來源。 | [課程](1-Introduction/03-defining-data/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 04 | 統計與機率導論 | [介紹](1-Introduction/README.md) | 使用機率與統計數學技術來理解數據。 | [課程](1-Introduction/04-stats-and-probability/README.md) [影片](https://youtu.be/Z5Zy85g4Yjw) | [Dmitry](http://soshnikov.com) |
| 05 | 使用關聯式數據 | [資料操作](2-Working-With-Data/README.md) | 介紹關聯式數據及如何使用結構化查詢語言(SQL發音「see-quell」)來探索和分析關聯式資料的基礎。 | [課程](2-Working-With-Data/05-relational-databases/README.md) | [Christopher](https://www.twitter.com/geektrainer) |
| 06 | 使用 NoSQL 數據 | [資料操作](2-Working-With-Data/README.md) | 介紹非關聯式數據、各類型別以及如何探索和分析文件型資料庫的基礎。 | [課程](2-Working-With-Data/06-non-relational/README.md) | [Jasmine](https://twitter.com/paladique) |
| 07 | 使用 Python | [資料操作](2-Working-With-Data/README.md) | 使用 Python 及如 Pandas 等函式庫進行數據探索的基礎。建議具備 Python 程式設計基礎。 | [課程](2-Working-With-Data/07-python/README.md) [影片](https://youtu.be/dZjWOGbsN4Y) | [Dmitry](http://soshnikov.com) |
| 08 | 數據準備 | [資料操作](2-Working-With-Data/README.md) | 涵蓋清理與轉換數據的技術,應對遺失、不準確及不完整數據的挑戰。 | [課程](2-Working-With-Data/08-data-preparation/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 09 | 量化視覺化 | [數據視覺化](3-Data-Visualization/README.md) | 學習如何使用 Matplotlib 視覺化鳥類資料 🦆 | [課程](3-Data-Visualization/09-visualization-quantities/README.md) | [Jen](https://twitter.com/jenlooper) |
| 10 | 數據分布視覺化 | [數據視覺化](3-Data-Visualization/README.md) | 視覺化區間內的觀察與趨勢。 | [課程](3-Data-Visualization/10-visualization-distributions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 11 | 比例視覺化 | [數據視覺化](3-Data-Visualization/README.md) | 視覺化離散與群組百分比。 | [課程](3-Data-Visualization/11-visualization-proportions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 12 | 關係視覺化 | [數據視覺化](3-Data-Visualization/README.md) | 視覺化資料集及其變數間的連結與關聯。 | [課程](3-Data-Visualization/12-visualization-relationships/README.md) | [Jen](https://twitter.com/jenlooper) |
| 13 | 有意義的視覺化 | [數據視覺化](3-Data-Visualization/README.md) | 製作有效解決問題與洞察的有價值視覺化的技巧與指導。 | [課程](3-Data-Visualization/13-meaningful-visualizations/README.md) | [Jen](https://twitter.com/jenlooper) |
| 14 | 數據科學生命週期導論 | [生命週期](4-Data-Science-Lifecycle/README.md) | 介紹數據科學生命週期及其首步──獲取與擷取數據。 | [課程](4-Data-Science-Lifecycle/14-Introduction/README.md) | [Jasmine](https://twitter.com/paladique) |
| 15 | 分析階段 | [生命週期](4-Data-Science-Lifecycle/README.md) | 數據科學生命週期中專注於分析數據的階段技巧。 | [課程](4-Data-Science-Lifecycle/15-analyzing/README.md) | [Jasmine](https://twitter.com/paladique) |
| 16 | 溝通階段 | [生命週期](4-Data-Science-Lifecycle/README.md) | 數據科學生命週期中專注於以便於決策者理解的方式呈現數據洞察的階段。 | [課程](4-Data-Science-Lifecycle/16-communication/README.md) | [Jalen](https://twitter.com/JalenMcG) |
| 17 | 雲端數據科學 | [雲端數據](5-Data-Science-In-Cloud/README.md) | 介紹雲端數據科學及其優勢的系列課程。 | [課程](5-Data-Science-In-Cloud/17-Introduction/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) 及 [Maud](https://twitter.com/maudstweets) |
| 18 | 雲端數據科學 | [雲端數據](5-Data-Science-In-Cloud/README.md) | 使用 Low Code 工具訓練模型。 | [課程](5-Data-Science-In-Cloud/18-Low-Code/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) 及 [Maud](https://twitter.com/maudstweets) |
| 19 | 雲端數據科學 | [雲端數據](5-Data-Science-In-Cloud/README.md) | 使用 Azure Machine Learning Studio 部署模型。 | [課程](5-Data-Science-In-Cloud/19-Azure/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) 及 [Maud](https://twitter.com/maudstweets) |
| 20 | 真實世界的數據科學 | [真實世界](6-Data-Science-In-Wild/README.md) | 真實世界中由數據科學驅動的專案。 | [課程](6-Data-Science-In-Wild/20-Real-World-Examples/README.md) | [Nitya](https://twitter.com/nitya) |
| 01 | 定義資料科學 | [介紹](1-Introduction/README.md) | 了解資料科學的基本概念及其與人工智慧、機器學習和大數據的關聯。 | [課程](1-Introduction/01-defining-data-science/README.md) [影片](https://youtu.be/beZ7Mb_oz9I) | [Dmitry](http://soshnikov.com) |
| 02 | 資料科學倫理 | [介紹](1-Introduction/README.md) | 資料倫理概念、挑戰與架構。 | [課程](1-Introduction/02-ethics/README.md) | [Nitya](https://twitter.com/nitya) |
| 03 | 定義資料 | [介紹](1-Introduction/README.md) | 資料的分類及其常見來源。 | [課程](1-Introduction/03-defining-data/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 04 | 統計與機率導論 | [介紹](1-Introduction/README.md) | 使用機率與統計的數學技術來了解資料。 | [課程](1-Introduction/04-stats-and-probability/README.md) [影片](https://youtu.be/Z5Zy85g4Yjw) | [Dmitry](http://soshnikov.com) |
| 05 | 使用關聯式資料 | [資料處理](2-Working-With-Data/README.md) | 關聯式資料介紹及使用結構化查詢語言SQL發音為 “see-quell”探索和分析關聯式資料的基礎。 | [課程](2-Working-With-Data/05-relational-databases/README.md) | [Christopher](https://www.twitter.com/geektrainer) | | |
| 06 | 使用 NoSQL 資料 | [資料處理](2-Working-With-Data/README.md) | 非關聯式資料介紹、種類及探索和分析文件型資料庫的基礎。 | [課程](2-Working-With-Data/06-non-relational/README.md) | [Jasmine](https://twitter.com/paladique) |
| 07 | 使用 Python | [資料處理](2-Working-With-Data/README.md) | 使用 Python 進行資料探索的基礎,包含 Pandas 等函式庫。建議具備 Python 程式基礎。 | [課程](2-Working-With-Data/07-python/README.md) [影片](https://youtu.be/dZjWOGbsN4Y) | [Dmitry](http://soshnikov.com) |
| 08 | 資料準備 | [資料處理](2-Working-With-Data/README.md) | 資料清理與轉換技術,應對缺失、不準確或不完整資料的挑戰。 | [課程](2-Working-With-Data/08-data-preparation/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 09 | 量化視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 學習使用 Matplotlib 視覺化鳥類資料 🦆 | [課程](3-Data-Visualization/09-visualization-quantities/README.md) | [Jen](https://twitter.com/jenlooper) |
| 10 | 資料分佈視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 在區間內視覺化觀察與趨勢。 | [課程](3-Data-Visualization/10-visualization-distributions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 11 | 比例視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化離散和分組百分比。 | [課程](3-Data-Visualization/11-visualization-proportions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 12 | 關係視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化資料集及其變量間的連結和相關性。 | [課程](3-Data-Visualization/12-visualization-relationships/README.md) | [Jen](https://twitter.com/jenlooper) |
| 13 | 有意義的視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 創造有價值視覺化的技巧與指導,有助於有效解決問題和獲得見解。 | [課程](3-Data-Visualization/13-meaningful-visualizations/README.md) | [Jen](https://twitter.com/jenlooper) |
| 14 | 資料科學生命週期導論 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期介紹及其第一步驟:取得與提取資料。 | [課程](4-Data-Science-Lifecycle/14-Introduction/README.md) | [Jasmine](https://twitter.com/paladique) |
| 15 | 分析 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期中著重於資料分析的階段。 | [課程](4-Data-Science-Lifecycle/15-analyzing/README.md) | [Jasmine](https://twitter.com/paladique) | | |
| 16 | 溝通 | [生命週期](4-Data-Science-Lifecycle/README.md) | 資料科學生命週期中專注於以便於決策者理解的方式呈現資料洞見的階段。 | [課程](4-Data-Science-Lifecycle/16-communication/README.md) | [Jalen](https://twitter.com/JalenMcG) | | |
| 17 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 介紹雲端資料科學及其好處。 | [課程](5-Data-Science-In-Cloud/17-Introduction/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) 及 [Maud](https://twitter.com/maudstweets) |
| 18 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用低碼工具訓練模型。 |[課程](5-Data-Science-In-Cloud/18-Low-Code/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) 及 [Maud](https://twitter.com/maudstweets) |
| 19 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用 Azure 機器學習工作室部署模型。 | [課程](5-Data-Science-In-Cloud/19-Azure/README.md)| [Tiffany](https://twitter.com/TiffanySouterre) 及 [Maud](https://twitter.com/maudstweets) |
| 20 | 實務資料科學 | [實務](6-Data-Science-In-Wild/README.md) | 實際世界中由資料科學驅動的專案。 | [課程](6-Data-Science-In-Wild/20-Real-World-Examples/README.md) | [Nitya](https://twitter.com/nitya) |
## GitHub Codespaces
請依照以下步驟以 Codespace 開啟此範例:
1. 點擊 Code 下拉選單選擇 Open with Codespaces。
2. 在側邊欄底部選擇 + New codespace。
更多資訊請參見 [GitHub 文件](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository#creating-a-codespace)。
按照以下步驟在 Codespace 中開啟此範例:
1. 點擊 Code 下拉選單選擇 Open with Codespaces。
2. 在面板底部選擇 + New codespace。
欲了解更多,請參考[GitHub 文件](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository#creating-a-codespace)。
## VSCode Remote - Containers
請依照以下步驟,透過本機與 VSCode 並利用 VS Code Remote - Containers 擴充功能,在容器中開啟此儲存庫:
## VSCode 遠端容器
1. 若首次使用開發容器,請確認系統符合先決條件(例如已安裝 Docker詳見[入門文件](https://code.visualstudio.com/docs/devcontainers/containers#_getting-started)。
使用您的本機電腦和 VSCode 搭配 VS Code Remote - Containers 擴充功能,在容器中打開此儲存庫,步驟如下:
使用此儲存庫,可選擇以隔離的 Docker 磁碟區開啟:
1. 若您是首次使用開發容器,請確保系統符合先決條件(例如已安裝 Docker請參考[入門文件](https://code.visualstudio.com/docs/devcontainers/containers#_getting-started)。
**注意**:背後將使用 Remote-Containers: **Clone Repository in Container Volume...** 指令,在 Docker 磁碟區克隆原始碼,而非使用本地檔案系統。[Volumes](https://docs.docker.com/storage/volumes/) 是持久化容器數據的推薦方式。
使用此儲存庫,您可以選擇在獨立 Docker 卷中開啟儲存庫:
或開啟本地克隆或下載的儲存庫版本:
**注意**:底層將使用 Remote-Containers 的 **Clone Repository in Container Volume...** 指令,將原始碼克隆到 Docker 卷中,而非本地檔案系統。 [](https://docs.docker.com/storage/volumes/) 是持久化容器資料的首選機制。
- 將儲存庫克隆至本機檔案系統。
- 按 F1 並選擇 **Remote-Containers: Open Folder in Container...** 指令。
- 選擇該資料夾的複本,等候容器啟動後開始試用。
或是開啟本地克隆或下載的儲存庫副本:
- 將儲存庫克隆至本地檔案系統。
- 按 F1選擇 **Remote-Containers: Open Folder in Container...** 指令。
- 選擇剛剛克隆的資料夾,等待容器啟動,開始嘗試。
## 離線存取
您可以透過使用 [Docsify](https://docsify.js.org/#/) 離線瀏覽此文件。請先分叉此儲存庫,[在本機安裝 Docsify](https://docsify.js.org/#/quickstart),然後在此儲存庫根目錄輸入 `docsify serve`。網站將在本機的3000埠運行:`localhost:3000`。
您可以使用 [Docsify](https://docsify.js.org/#/) 進行離線瀏覽此文件。將此儲存庫分叉,於本機安裝 [Docsify](https://docsify.js.org/#/quickstart),然後在本儲存庫根目錄輸入 `docsify serve`網站將於本地主機的3000端口執行:`localhost:3000`。
> 注意,使用 Docsify 時不會渲染筆記本內容,若需執行筆記本,請在 VS Code 中透過 Python 核心另行執行。
> 注意,筆記本不會透過 Docsify 呈現,當您需要執行筆記本時,請在 VS Code 中使用 Python 核心單獨執行。
## 其他課程
我們的團隊也提供其他課程!敬請參考:
我們團隊也製作其他課程!歡迎參考:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
[![LangChain4j 初學者指南](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js for Beginners](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain for Beginners](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain4j for Beginners](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js 入門](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain 入門](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / Agents
[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI Agents for Beginners](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AZD 入門](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI 入門](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP 入門](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI Agents 入門](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### 生成式 AI 系列
[![Generative AI for Beginners](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
[![生成式 AI 入門](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
---
### 核心學習
[![ML for Beginners](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![Data Science for Beginners](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![AI for Beginners](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![Cybersecurity for Beginners](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![Web Dev for Beginners](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![IoT for Beginners](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![XR Development for Beginners](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
[![機器學習入門](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![數據科學入門](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![人工智能入門](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![網絡安全入門](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![網頁開發入門](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![物聯網入門](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![XR 開發入門](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### Copilot 系列
[![Copilot for AI Paired Programming](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![Copilot for C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
[![Copilot 供 AI 配對編程](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![Copilot C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot 探險](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
<!-- CO-OP TRANSLATOR OTHER COURSES END -->
## 獲取幫
## 尋求協
**遇到問題** 請查看我們的[故障排除指南](TROUBLESHOOTING.md),以獲取常見問題的解決方案
**遇到問題嗎?** 請查看我們的 [疑難排解指南](TROUBLESHOOTING.md) 來尋找常見問題的解決方法
如果你卡住了或者對構建 AI 應用有任何疑問,加入其他學習者和有經驗的開發者,一起討論 MCP。這是一個支援性強的社群歡迎提問並自由分享知識
如果你在建構 AI 應用程式時遇到阻礙或有任何疑問,歡迎加入 MCP 學習者與經驗豐富的開發者討論社群。這是一個支持性強的社區,任何問題都可提出,並且知識會自由分享
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
如果你在構建過程中有產品反饋或發現錯誤,請訪問:
如果你有產品反饋或在建構過程中發現錯誤,請訪問:
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
[![Microsoft Foundry 開發者論壇](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免責聲明**
本文件由人工智能翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻譯而成。雖然我們致力於確保準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應視為權威來源。對於重要資訊,建議使用專業人工翻譯。我們對因使用本翻譯而產生的任何誤解或誤釋概不負責
**免責聲明**
本文件係使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 翻譯而成。雖然我們致力於確保準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威版本。對於重要資訊,建議採用專業人工翻譯。我們不對因使用此翻譯而引起的誤解或曲解承擔任何責任
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -4,7 +4,7 @@
Nitya Narasimhan藝術家
![roadmap sketchnote](../../../translated_images/zh-MO/00-Roadmap.4905d6567dff47532b9bfb8e0b8980fc6b0b1292eebb24181c1a9753b33bc0f5.png)
![roadmap sketchnote](../../../translated_images/zh-MO/00-Roadmap.4905d6567dff4753.webp)
---

@ -11,12 +11,24 @@
"source_file": "1-Introduction/01-defining-data-science/assignment.md",
"language_code": "zh-TW"
},
"1-Introduction/01-defining-data-science/notebook.ipynb": {
"original_hash": "8f5eb7b3f7cc89e6d98fb32e1de65dec",
"translation_date": "2026-02-28T09:03:19+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "zh-TW"
},
"1-Introduction/01-defining-data-science/solution/assignment.md": {
"original_hash": "a8f79b9c0484c35b4f26e8aec7fc4d56",
"translation_date": "2025-08-25T16:57:11+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/assignment.md",
"language_code": "zh-TW"
},
"1-Introduction/01-defining-data-science/solution/notebook.ipynb": {
"original_hash": "090bbfbfcb0c40d3d6e3236f836164ea",
"translation_date": "2026-02-28T09:03:48+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/notebook.ipynb",
"language_code": "zh-TW"
},
"1-Introduction/02-ethics/README.md": {
"original_hash": "58860ce9a4b8a564003d2752f7c72851",
"translation_date": "2025-10-03T16:09:59+00:00",
@ -95,6 +107,12 @@
"source_file": "2-Working-With-Data/07-python/assignment.md",
"language_code": "zh-TW"
},
"2-Working-With-Data/07-python/notebook-covidspread.ipynb": {
"original_hash": "6335cccba01dc6ad7b15aba7a8c73f38",
"translation_date": "2026-02-28T09:04:37+00:00",
"source_file": "2-Working-With-Data/07-python/notebook-covidspread.ipynb",
"language_code": "zh-TW"
},
"2-Working-With-Data/08-data-preparation/README.md": {
"original_hash": "1b560955ff39a2bcf2a049fce474a951",
"translation_date": "2025-09-05T11:46:51+00:00",
@ -360,8 +378,8 @@
"language_code": "zh-TW"
},
"README.md": {
"original_hash": "9204a2806964384a56f5cb0f22bbe953",
"translation_date": "2026-02-06T07:40:51+00:00",
"original_hash": "f671e295a294a2559fc59d1524e001b4",
"translation_date": "2026-02-28T09:09:12+00:00",
"source_file": "README.md",
"language_code": "zh-TW"
},

@ -6,7 +6,7 @@
---
[![資料科學定義影片](../../../../translated_images/zh-TW/video-def-ds.6623ee2392ef1abf6d7faf3fad10a4163642811749da75f44e35a5bb121de15c.png)](https://youtu.be/beZ7Mb_oz9I)
[![資料科學定義影片](../../../../translated_images/zh-TW/video-def-ds.6623ee2392ef1abf.webp)](https://youtu.be/beZ7Mb_oz9I)
## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/0)
@ -144,7 +144,7 @@
在這次挑戰中,我們將嘗試通過分析文本來找出與資料科學領域相關的概念。我們將選取一篇關於資料科學的維基百科文章,下載並處理文本,然後建立一個像這樣的文字雲:
![資料科學文字雲](../../../../translated_images/zh-TW/ds_wordcloud.664a7c07dca57de017c22bf0498cb40f898d48aa85b3c36a80620fea12fadd42.png)
![資料科學文字雲](../../../../translated_images/zh-TW/ds_wordcloud.664a7c07dca57de0.webp)
請訪問 [`notebook.ipynb`](../../../../1-Introduction/01-defining-data-science/notebook.ipynb ':ignore') 閱讀程式碼。您也可以執行程式碼,並即時查看它如何進行所有的資料轉換。

@ -3,15 +3,15 @@
{
"cell_type": "markdown",
"source": [
"# 挑戰:分析有關數據科學的文本\n",
"# 挑戰:分析關於資料科學的文本\n",
"\n",
"在這個例子中,我們將進行一個簡單的練習,涵蓋傳統數據科學流程的所有步驟。你不需要撰寫任何程式碼,只需點擊下方的單元格執行它們並觀察結果。作為一個挑戰,我們鼓勵你嘗試使用不同的數據來運行這段程式碼。\n",
"在此範例中,我們來做一個涵蓋傳統資料科學流程所有步驟的簡單練習。你不必撰寫任何程式碼,只需點擊下面的儲存格來執行並觀察結果。作為挑戰,你可以嘗試使用不同的資料來執行這段程式碼。\n",
"\n",
"## 目標\n",
"\n",
"在這節課中,我們討論了與數據科學相關的不同概念。現在,讓我們嘗試通過進行一些**文本挖掘**來發現更多相關概念。我們將從一段有關數據科學的文本開始,從中提取關鍵詞,然後嘗試將結果可視化。\n",
"在本課程中,我們已經討論了與資料科學相關的不同概念。讓我們透過進行**文字探勘**來試著發掘更多相關概念。我們將從一段關於資料科學的文本開始,從中擷取關鍵字,然後嘗試將結果視覺化。\n",
"\n",
"作為文本,我們將使用維基百科上有關數據科學的頁面:\n"
"作為文本,我將使用維基百科上的資料科學頁面:\n"
],
"metadata": {}
},
@ -32,9 +32,9 @@
{
"cell_type": "markdown",
"source": [
"## 第一步:獲取數據\n",
"## Step 1: 獲取資料\n",
"\n",
"每個數據科學流程的第一步都是獲取數據。我們將使用 `requests` 庫來完成這一步\n"
"每個資料科學流程的第一步是獲取資料。我們將使用 `requests` 函式庫來完成這個步驟\n"
],
"metadata": {}
},
@ -66,45 +66,43 @@
{
"cell_type": "markdown",
"source": [
"## 步驟 2:轉換資料\n",
"## 第 2 步:轉換資料\n",
"\n",
"下一步是將資料轉換成適合處理的形式。在我們的案例中,我們已經從網頁下載了 HTML 原始碼,現在需要將轉換為純文字。\n",
"下一步是將資料轉換成適合處理的形式。在我們的案例中,我們已經從網頁下載了 HTML 原始碼,現在需要將轉換為純文字。\n",
"\n",
"有許多方法可以完成這項工作。我們將使用 Python 中最簡單的內建物件 [HTMLParser](https://docs.python.org/3/library/html.parser.html)。我們需要繼承 `HTMLParser` 類別,並定義程式碼來收集 HTML 標籤內的所有文字,但排除 `<script>` 和 `<style>` 標籤中的內容。\n"
"有很多方法可以做到這一點。我們將使用 [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/),這是一個流行的 Python HTML 解析庫。BeautifulSoup 允許我們以目標為特定的 HTML 元素,因此可以專注於維基百科的主要文章內容,同時減少一些導航選單、側邊欄、頁腳和其他無關內容(雖然仍可能留下一些樣板文字)。\n"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"首先,我們需要安裝用於 HTML 解析的 BeautifulSoup 函式庫:\n"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": null,
"source": [
"import sys\r\n",
"!{sys.executable} -m pip install beautifulsoup4"
],
"outputs": [],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 64,
"source": [
"from html.parser import HTMLParser\r\n",
"\r\n",
"class MyHTMLParser(HTMLParser):\r\n",
" script = False\r\n",
" res = \"\"\r\n",
" def handle_starttag(self, tag, attrs):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = True\r\n",
" def handle_endtag(self, tag):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = False\r\n",
" def handle_data(self, data):\r\n",
" if str.strip(data)==\"\" or self.script:\r\n",
" return\r\n",
" self.res += ' '+data.replace('[ edit ]','')\r\n",
"\r\n",
"parser = MyHTMLParser()\r\n",
"parser.feed(text)\r\n",
"text = parser.res\r\n",
"print(text[:1000])"
"from bs4 import BeautifulSoup\r\n\r\n# Parse the HTML content\r\nsoup = BeautifulSoup(text, 'html.parser')\r\n\r\n# Extract only the main article content from Wikipedia\r\n# Wikipedia uses 'mw-parser-output' class for the main article content\r\ncontent = soup.find('div', class_='mw-parser-output')\r\n\r\ndef clean_wikipedia_content(content_node):\r\n \"\"\"Remove common non-article elements from a Wikipedia content node.\"\"\"\r\n # Strip jump links, navboxes, reference lists/superscripts, edit sections, TOC, sidebars, etc.\r\n selectors = [\r\n '.mw-jump-link',\r\n '.navbox',\r\n '.reflist',\r\n 'sup.reference',\r\n '.mw-editsection',\r\n '.hatnote',\r\n '.metadata',\r\n '.infobox',\r\n '#toc',\r\n '.toc',\r\n '.sidebar',\r\n ]\r\n for selector in selectors:\r\n for el in content_node.select(selector):\r\n el.decompose()\r\n\r\nif content:\r\n # Clean the content node to better approximate article text only.\r\n clean_wikipedia_content(content)\r\n text = content.get_text(separator=' ', strip=True)\r\n print(text[:1000])\r\nelse:\r\n print(\"Could not find main content. Using full page text.\")\r\n text = soup.get_text(separator=' ', strip=True)\r\n print(text[:1000])"
],
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" Data science - Wikipedia Data science From Wikipedia, the free encyclopedia Jump to navigation Jump to search Interdisciplinary field of study focused on deriving knowledge and insights from data Not to be confused with information science . The existence of Comet NEOWISE (here depicted as a series of red dots) was discovered by analyzing astronomical survey data acquired by a space telescope , the Wide-field Infrared Survey Explorer . Part of a series on Machine learning and data mining Problems Classification Clustering Regression Anomaly detection AutoML Association rules Reinforcement learning Structured prediction Feature engineering Feature learning Online learning Semi-supervised learning Unsupervised learning Learning to rank Grammar induction Supervised learning ( classification  • regression ) Decision trees Ensembles Bagging Boosting Random forest k -NN Linear regression Naive Bayes Artificial neural networks Logistic regression Perceptron Relevance vector machine \n"
"Data science From Wikipedia, the free encyclopedia Interdisciplinary field of study focused on deriving knowledge and insights from data Data science is an interdisciplinary academic field that uses statistics, scientific computing, scientific methods, processes, algorithms and systems to extract or extrapolate knowledge and insights from noisy, structured, and unstructured data. Data science also integrates domain knowledge from the underlying application domain. Data science is multifaceted and can be described as a science, a research paradigm, a research method, a discipline, a workflow, and a profession.\n"
]
}
],
@ -113,11 +111,11 @@
{
"cell_type": "markdown",
"source": [
"## 第三步:獲取洞察\n",
"## Step 3: 獲取洞見\n",
"\n",
"最重要的一步是將我們的數據轉化為可以提取洞察的形式。在我們的案例中,我們希望從文本中提取關鍵字,並了解哪些關鍵字更具意義。\n",
"最重要的步驟是將我們的數據轉換成一種可以從中獲取洞見的形式。在我們的例子中,我們想從文本中提取關鍵字,並查看哪些關鍵字更有意義。\n",
"\n",
"我們將使用一個名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 函式庫來進行關鍵字提取。首先,讓我們安裝這個函式庫(如果尚未安裝的話)\n"
"我們將使用名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 函式庫來進行關鍵字提取。首先,讓我們安裝這個函式庫,以防它尚未安裝\n"
],
"metadata": {}
},
@ -162,7 +160,7 @@
{
"cell_type": "markdown",
"source": [
"主要功能可從 `Rake` 對象獲取,我們可以使用一些參數來自定義。在我們的例子中,我們將關鍵字的最小長度設置為 5 個字符,關鍵字在文檔中的最小頻率設置為 3關鍵字中的最大單詞數設置為 2。可以隨意嘗試其他值並觀察結果。\n"
"主要功能來自 `Rake` 物件,我們可以使用一些參數進行自訂。在我們的例子中,我們將關鍵字的最小長度設定為 5 個字元,關鍵字在文件中出現的最小頻率設定為 3關鍵字中最大詞數設定為 2。歡迎自由調整其他數值並觀察結果。\n"
],
"metadata": {}
},
@ -211,11 +209,11 @@
{
"cell_type": "markdown",
"source": [
"我們獲得了一份術語清單,並附有其相關的重要性程度。如您所見,最相關的領域,例如機器學習和大數據,位於清單的頂部位置。\n",
"我們獲得了一組詞彙清單及其相關重要度。如您所見,最相關的學科,例如機器學習和大數據,位於清單的頂部位置。\n",
"\n",
"## 第四步:結果的可視化\n",
"## Step 4: Visualizing the Result\n",
"\n",
"人們通常能以視覺形式最有效地解讀數據。因此,將數據進行可視化以獲取一些洞察通常是有意義的。我們可以使用 Python 中的 `matplotlib` 庫來繪製關鍵字及其相關性的簡單分佈圖:\n"
"人們通常能更好地以視覺形式解讀資料。因此,常常將資料視覺化以獲得一些洞見是有意義的。我們可以使用 Python 中的 `matplotlib` 函式庫來繪製關鍵字與其關聯度的簡單分布圖:\n"
],
"metadata": {}
},
@ -252,7 +250,7 @@
{
"cell_type": "markdown",
"source": [
"有一種更好的方法來視覺化詞頻,那就是使用**文字雲**。我們需要安裝另一個庫來從我們的關鍵字列表中繪製文字雲。\n"
"然而,有一種更好的方式來視覺化詞頻——使用 **文字雲**。我們將需要安裝另一個函式庫來從我們的關鍵字清單繪製文字雲。\n"
],
"metadata": {}
},
@ -268,7 +266,7 @@
{
"cell_type": "markdown",
"source": [
"`WordCloud` 物件負責接收原始文本或預先計算的單詞及其頻率列表,並返回一個圖像,隨後可以使用 `matplotlib` 顯示:\n"
"`WordCloud` 物件負責接收原始文字或預先計算好的詞語及其頻率清單,並返回一張圖片,該圖片可以用 `matplotlib` 顯示:\n"
],
"metadata": {}
},
@ -312,7 +310,7 @@
{
"cell_type": "markdown",
"source": [
"我們也可以將原始文本傳遞給 `WordCloud` - 讓我們看看是否能夠得到類似的結果:\n"
"我們也可以將原始文字傳入 `WordCloud` —— 讓我們看看是否能得到類似的結果:\n"
],
"metadata": {}
},
@ -372,11 +370,11 @@
{
"cell_type": "markdown",
"source": [
"你可以看到,現在的文字雲看起來更吸引人,但同時也包含了許多雜訊(例如像 `Retrieved on` 這樣無關的詞)。此外,我們得到的雙詞關鍵字(例如 *data scientist* 或 *computer science*)也更少了。這是因為 RAKE 演算法在從文本中選擇優質關鍵字方面表現得更好。這個例子說明了資料前處理和清理的重要性,因為最終清晰的結果能幫助我們做出更好的決策。\n",
"你可以看到現在的文字雲看起來更加令人印象深刻,但它也包含了許多噪音(例如,不相關的字詞如 `Retrieved on`)。此外,我們得到的由兩個字組成的關鍵字較少,例如 *data scientist* 或 *computer science*。這是因為 RAKE 演算法在從文本中選擇優質關鍵字方面表現得更好。這個例子說明了資料前處理和清理的重要性,因為最後的清晰畫面將使我們能做出更好的決策。\n",
"\n",
"在這個練習中,我們簡單地從維基百科的文本中提取了一些意義,以關鍵字和文字雲的形式呈現。這個例子雖然簡單,但很好地展示了資料科學家在處理資料時會採取的所有典型步驟,從資料獲取到視覺化。\n",
"在這個練習中,我們經歷了一個簡單的過程,從維基百科文本中提取一些意義,以關鍵字和文字雲的形式呈現。這個例子相當簡單,但它很好地展示了資料科學家在處理資料時會採取的所有典型步驟,從資料擷取到視覺化。\n",
"\n",
"在我們的課程中,我們將詳細討論這些步驟。\n"
"在我們的課程中,我們將詳細討論所有這些步驟。\n"
],
"metadata": {}
},
@ -394,7 +392,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免責聲明** \n本文件使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用此翻譯而產生的任何誤解或錯誤解讀概不負責。\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免責聲明** \n本文件已使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於提供準確的內容,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應視為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對於因使用本翻譯所導致的任何誤解或誤釋不負任何責任。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -418,12 +416,6 @@
},
"interpreter": {
"hash": "c28e7b6bf4e5b397b8288a85bf0a94ea8d3585ce2b01919feb195678ec71581b"
},
"coopTranslator": {
"original_hash": "50c0f0a5204a18405611cbe7e0fec56b",
"translation_date": "2025-09-02T10:10:48+00:00",
"source_file": "1-Introduction/01-defining-data-science/notebook.ipynb",
"language_code": "tw"
}
},
"nbformat": 4,

@ -3,17 +3,17 @@
{
"cell_type": "markdown",
"source": [
"# 挑戰:分析有關數據科學的文本\n",
"# 挑戰:分析關於資料科學的文字\n",
"\n",
"> *在這份筆記本中,我們嘗試使用不同的 URL - 關於機器學習的維基百科文章。你會發現,與數據科學不同,這篇文章包含了許多術語,這使得分析更加困難。在進行關鍵字提取後,我們需要想出另一種方法來清理數據,以去除一些頻繁但無意義的詞組。*\n",
"> *在本筆記本中,我們嘗試使用不同的 URL - Wikipedia 上關於機器學習的文章。你可以看到,與資料科學不同,這篇文章包含很多術語,這使得分析變得更具挑戰性。我們需要在進行關鍵字擷取之後,想出另一種方法來清理資料,以去除一些常見但沒有意義的詞組。*\n",
"\n",
"在這個例子中,我們將進行一個簡單的練習,涵蓋傳統數據科學流程的所有步驟。你不需要編寫任何代碼,只需點擊下面的單元格執行它們並觀察結果。作為挑戰,鼓勵你嘗試使用不同的數據來運行這段代碼。\n",
"在這個範例中,讓我們做一個涵蓋傳統資料科學流程所有步驟的簡單練習。你不需要撰寫任何程式碼,只需點擊下面的儲存格來執行它們並觀察結果。作為挑戰,鼓勵你嘗試使用不同的資料來執行這段程式碼。\n",
"\n",
"## 目標\n",
"\n",
"在這節課中,我們討論了與數據科學相關的不同概念。讓我們嘗試通過**文本挖掘**來發現更多相關概念。我們將從一段有關數據科學的文本開始,從中提取關鍵字,然後嘗試將結果可視化。\n",
"在這堂課中,我們一直在討論與資料科學相關的不同概念。讓我們透過進行一些**文字探勘**來嘗試發現更多相關概念。我們將從一段關於資料科學的文字開始,擷取關鍵字,然後嘗試將結果視覺化。\n",
"\n",
"作為文本,我將使用維基百科上關於數據科學的頁面:\n"
"作為文字內容,我將使用維基百科上關於資料科學的頁面:\n"
],
"metadata": {}
},
@ -35,9 +35,9 @@
{
"cell_type": "markdown",
"source": [
"## 第一步:獲取數據\n",
"## Step 1: 取得資料\n",
"\n",
"每個數據科學流程的第一步都是獲取數據。我們將使用 `requests` 庫來完成這一步\n"
"每個資料科學流程的第一步都是取得資料。我們將使用 `requests` 函式庫來完成這個工作\n"
],
"metadata": {}
},
@ -69,45 +69,43 @@
{
"cell_type": "markdown",
"source": [
"## 第 2 步:轉換資料\n",
"## Step 2: 轉換資料\n",
"\n",
"下一步是將資料轉換成適合處理的形式。在我們的例中,我們已經從網頁下載了 HTML 原始碼,現在需要將其轉換為純文字。\n",
"下一步是將資料轉換成適合處理的形式。在我們的例中,我們已經從網頁下載了 HTML 原始碼,接下來我們需要將它轉換成純文字。\n",
"\n",
"有許多方法可以完成這項工作。我們將使用 Python 中最簡單的內建 [HTMLParser](https://docs.python.org/3/library/html.parser.html) 物件。我們需要繼承 `HTMLParser` 類別,並定義程式碼以收集所有 HTML 標籤內的文字,除了 `<script>` 和 `<style>` 標籤。\n"
"這可以透過很多方式完成。我們將使用 [BeautifulSoup](https://www.crummy.com/software/BeautifulSoup/),這是一個流行的 Python 網頁爬蟲庫,用於解析 HTML。BeautifulSoup 讓我們能夠針對特定的 HTML 元素進行操作,因此我們可以聚焦於維基百科的主要文章內容,並減少一些導覽選單、側邊欄、頁尾及其他無關的內容(雖然仍可能會留下部分樣板文字)。\n"
],
"metadata": {}
},
{
"cell_type": "markdown",
"source": [
"首先我們需要安裝用於HTML解析的BeautifulSoup庫\n"
],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": null,
"source": [
"import sys\r\n",
"!{sys.executable} -m pip install beautifulsoup4"
],
"outputs": [],
"metadata": {}
},
{
"cell_type": "code",
"execution_count": 4,
"source": [
"from html.parser import HTMLParser\r\n",
"\r\n",
"class MyHTMLParser(HTMLParser):\r\n",
" script = False\r\n",
" res = \"\"\r\n",
" def handle_starttag(self, tag, attrs):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = True\r\n",
" def handle_endtag(self, tag):\r\n",
" if tag.lower() in [\"script\",\"style\"]:\r\n",
" self.script = False\r\n",
" def handle_data(self, data):\r\n",
" if str.strip(data)==\"\" or self.script:\r\n",
" return\r\n",
" self.res += ' '+data.replace('[ edit ]','')\r\n",
"\r\n",
"parser = MyHTMLParser()\r\n",
"parser.feed(text)\r\n",
"text = parser.res\r\n",
"print(text[:1000])"
"from bs4 import BeautifulSoup\r\n\r\n# Parse the HTML content\r\nsoup = BeautifulSoup(text, 'html.parser')\r\n\r\n# Extract only the main article content from Wikipedia\r\n# Wikipedia uses 'mw-parser-output' class for the main article content\r\ncontent = soup.find('div', class_='mw-parser-output')\r\n\r\ndef clean_wikipedia_content(content_node):\r\n \"\"\"Remove common non-article elements from a Wikipedia content node.\"\"\"\r\n # Strip jump links, navboxes, reference lists/superscripts, edit sections, TOC, sidebars, etc.\r\n selectors = [\r\n '.mw-jump-link',\r\n '.navbox',\r\n '.reflist',\r\n 'sup.reference',\r\n '.mw-editsection',\r\n '.hatnote',\r\n '.metadata',\r\n '.infobox',\r\n '#toc',\r\n '.toc',\r\n '.sidebar',\r\n ]\r\n for selector in selectors:\r\n for el in content_node.select(selector):\r\n el.decompose()\r\n\r\nif content:\r\n # Clean the content node to better approximate article text only.\r\n clean_wikipedia_content(content)\r\n text = content.get_text(separator=' ', strip=True)\r\n print(text[:1000])\r\nelse:\r\n print(\"Could not find main content. Using full page text.\")\r\n text = soup.get_text(separator=' ', strip=True)\r\n print(text[:1000])"
],
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" Machine learning - Wikipedia Machine learning From Wikipedia, the free encyclopedia Jump to navigation Jump to search Study of algorithms that improve automatically through experience For the journal, see Machine Learning (journal) . \"Statistical learning\" redirects here. For statistical learning in linguistics, see statistical learning in language acquisition . Part of a series on Artificial intelligence Major goals Artificial general intelligence Planning Computer vision General game playing Knowledge reasoning Machine learning Natural language processing Robotics Approaches Symbolic Deep learning Bayesian networks Evolutionary algorithms Philosophy Ethics Existential risk Turing test Chinese room Control problem Friendly AI History Timeline Progress AI winter Technology Applications Projects Programming languages Glossary Glossary v t e Part of a series on Machine learning and data mining Problems Classification Clustering Regression Anomaly detection Data Cleaning AutoML Associ\n"
"Machine learning From Wikipedia, the free encyclopedia Study of algorithms that improve automatically through experience Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of statistical algorithms that can learn from data and generalize to unseen data, and thus perform tasks without explicit instructions. Recently, artificial neural networks have been able to surpass many previous approaches in performance. ML finds application in many fields, including natural language processing, computer vision, speech recognition, email filtering, agriculture, and medicine.\n"
]
}
],
@ -116,11 +114,11 @@
{
"cell_type": "markdown",
"source": [
"## 第三步:獲取洞察\n",
"## Step 3: 獲取洞察\n",
"\n",
"最重要的一步是將我們的數據轉化為可以提取洞察的形式。在我們的案例中,我們希望從文本中提取關鍵字,並查看哪些關鍵字更有意義。\n",
"最重要的步驟是將資料轉化為我們可以從中獲取洞察的形式。在我們的案例中,我們想要從文本中提取關鍵字,並查看哪些關鍵字更有意義。\n",
"\n",
"我們將使用名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 庫來進行關鍵字提取。首先,讓我們安裝這個庫,以防尚未安裝:\n"
"我們將使用名為 [RAKE](https://github.com/aneesha/RAKE) 的 Python 函式庫來進行關鍵字提取。首先,讓我們安裝這個函式庫,以防尚未安裝:\n"
],
"metadata": {}
},
@ -172,7 +170,7 @@
{
"cell_type": "markdown",
"source": [
"主要功能可從 `Rake` 對象中獲取,我們可以使用一些參數來自定義。在我們的情況下,我們將關鍵字的最小長度設置為 5 個字符,關鍵字在文檔中的最小頻率設置為 3關鍵字中的最大單詞數設置為 2。可以隨意嘗試其他值並觀察結果。\n"
"主要功能是由 `Rake` 物件提供,我們可以使用一些參數來自訂。在本例中,我們將設定關鍵字的最小長度為 5 個字元,關鍵字在文件中的最小出現頻率為 3關鍵字中最多包含的詞數為 2。歡迎隨意調整其他數值並觀察結果。\n"
],
"metadata": {}
},
@ -353,11 +351,11 @@
{
"cell_type": "markdown",
"source": [
"我們獲得了一份術語列表,並附上其重要性程度。如您所見,最相關的領域,例如機器學習和大數據,位於列表的頂端位置。\n",
"我們取得了一份術語清單以及相關的重要程度。如您所見,最相關的學科,例如機器學習與大數據,皆出現在列表的前端位置。\n",
"\n",
"## 第步:結果視覺化\n",
"## 第4步:結果視覺化\n",
"\n",
"人們通常能以視覺形式更好地解讀數據。因此,將數據進行視覺化以獲取一些洞察通常是有意義的。我們可以使用 Python 中的 `matplotlib` 庫來繪製關鍵字及其相關性分佈的簡單圖表:\n"
"人們最能以視覺形式解讀資料。因此,通常將資料視覺化以得出一些見解是合理的。我們可以使用 Python 中的 `matplotlib` 函式庫來繪製關鍵字與其相關性簡單分布的圖表:\n"
],
"metadata": {}
},
@ -392,7 +390,7 @@
{
"cell_type": "markdown",
"source": [
"不過,還有一種更好的方式來視覺化詞頻——使用**文字雲**。我們需要安裝另一個庫來從我們的關鍵詞列表中繪製文字雲。\n"
"不過,有一種更好的方式來視覺化詞頻 - 使用 **文字雲**。我們需要安裝另一個函式庫來從我們的關鍵字列表繪製文字雲。\n"
],
"metadata": {}
},
@ -408,7 +406,7 @@
{
"cell_type": "markdown",
"source": [
"`WordCloud` 物件負責接收原始文本或預先計算的單詞及其頻率列表,並返回一個圖像,隨後可使用 `matplotlib` 顯示:\n"
"`WordCloud` 物件負責接收原始文字或預先計算好的字詞及其頻率清單,並回傳一個影像,該影像可以使用 `matplotlib` 顯示:\n"
],
"metadata": {}
},
@ -441,7 +439,7 @@
{
"cell_type": "markdown",
"source": [
"我們也可以將原始文本傳遞給 `WordCloud` - 讓我們看看是否能夠得到類似的結果:\n"
"我們也可以將原始文本傳遞給 `WordCloud` —— 讓我們看看是否能獲得類似的結果:\n"
],
"metadata": {}
},
@ -490,11 +488,11 @@
{
"cell_type": "markdown",
"source": [
"你可以看到,文字雲現在看起來更吸引人,但它也包含了許多雜訊(例如,像 `Retrieved on` 這樣無關的詞)。此外,我們得到的雙詞關鍵字(例如 *data scientist* 或 *computer science*)也更少。這是因為 RAKE 演算法在從文本中選擇優質關鍵字方面表現得更好。這個例子說明了資料前處理和清理的重要性,因為最終清晰的結果能幫助我們做出更好的決策。\n",
"你可以看到現在的文字雲看起來更令人印象深刻,但它也包含了許多雜訊(例如無關的詞彙如 `Retrieved on`)。此外,我們得到的由兩個詞組成的關鍵詞較少,例如 *data scientist* 或 *computer science*。這是因為 RAKE 演算法在從文本中選擇優質關鍵詞方面表現得更好。這個範例說明了資料前處理和清理的重要性,因為最後清晰的結果能讓我們做出更好的決策。\n",
"\n",
"在這個練習中,我們通過一個簡單的過程,從維基百科的文本中提取了一些意義,以關鍵字和文字雲的形式呈現。這個例子相當簡單,但很好地展示了資料科學家在處理資料時會採取的所有典型步驟,從資料獲取到視覺化。\n",
"在這個練習中,我們經歷了一個從維基百科文本中提取某些意義的簡單過程,形式為關鍵詞和文字雲。這個範例相當簡單,但很好地展示了一個資料科學家在處理資料時所採取的所有典型步驟,從資料獲取到視覺化。\n",
"\n",
"在我們的課程中,我們將詳細討論這些步驟。\n"
"在我們的課程中,將詳細討論所有這些步驟。\n"
],
"metadata": {}
},
@ -502,7 +500,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"\n---\n\n**免責聲明** \n本文件使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。應以原始語言的文件作為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們對因使用本翻譯而產生的任何誤解或錯誤解讀概不負責。\n"
"---\n\n<!-- CO-OP TRANSLATOR DISCLAIMER START -->\n**免責聲明** \n本文件使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們力求準確,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們不對因使用本翻譯內容而產生的任何誤解或誤譯承擔責任。\n<!-- CO-OP TRANSLATOR DISCLAIMER END -->\n"
]
}
],
@ -526,12 +524,6 @@
},
"interpreter": {
"hash": "86193a1ab0ba47eac1c69c1756090baa3b420b3eea7d4aafab8b85f8b312f0c5"
},
"coopTranslator": {
"original_hash": "dbdf34788efab64e5d817f1df38965a8",
"translation_date": "2025-09-02T10:25:06+00:00",
"source_file": "1-Introduction/01-defining-data-science/solution/notebook.ipynb",
"language_code": "tw"
}
},
"nbformat": 4,

@ -6,7 +6,7 @@
統計學與機率論是數學中高度相關的兩個領域,對於數據科學來說尤為重要。即使在缺乏深厚數學知識的情況下也可以操作數據,但了解一些基本概念仍然是有益的。在這裡,我們將提供一個簡短的介紹,幫助您入門。
[![介紹影片](../../../../translated_images/zh-TW/video-prob-and-stats.e4282e5efa2f2543400843ed98b1057065c9600cebfc8a728e8931b5702b2ae4.png)](https://youtu.be/Z5Zy85g4Yjw)
[![介紹影片](../../../../translated_images/zh-TW/video-prob-and-stats.e4282e5efa2f2543.webp)](https://youtu.be/Z5Zy85g4Yjw)
## [課前測驗](https://ff-quizzes.netlify.app/en/ds/quiz/6)
@ -30,7 +30,7 @@
我們只能討論變數落在某個值區間內的機率,例如 P(t<sub>1</sub>≤X<t<sub>2</sub>)。在這種情況下,機率分佈由 **機率密度函數** p(x) 描述,其滿足以下公式:
![P(t_1\le X<t_2)=\int_{t_1}^{t_2}p(x)dx](../../../../translated_images/zh-TW/probability-density.a8aad29f17a14afb519b407c7b6edeb9f3f9aa5f69c9e6d9445f604e5f8a2bf7.png)
![P(t_1\le X<t_2)=\int_{t_1}^{t_2}p(x)dx](../../../../translated_images/zh-TW/probability-density.a8aad29f17a14afb.webp)
連續型均勻分佈是均勻分佈的連續類比,定義在一個有限區間內。變數 X 落入長度為 l 的區間的機率與 l 成正比,並且總和為 1。
@ -73,11 +73,11 @@
以下是顯示我們數據的平均值、中位數和四分位數的箱型圖:
![體重箱型圖](../../../../translated_images/zh-TW/weight-boxplot.1dbab1c03af26f8a008fff4e17680082c8ab147d6df646cbac440bbf8f5b9c42.png)
![體重箱型圖](../../../../translated_images/zh-TW/weight-boxplot.1dbab1c03af26f8a.webp)
由於我們的數據包含不同球員 **角色** 的信息,我們還可以按角色繪製箱型圖——這將幫助我們了解參數值在不同角色之間的差異。這次我們將考慮身高:
![按角色繪製的箱型圖](../../../../translated_images/zh-TW/boxplot_byrole.036b27a1c3f52d42f66fba2324ec5cde0a1bca6a01a619eeb0ce7cd054b2527b.png)
![按角色繪製的箱型圖](../../../../translated_images/zh-TW/boxplot_byrole.036b27a1c3f52d42.webp)
這張圖表表明,平均而言,一壘手的身高高於二壘手的身高。在本課程的後面部分,我們將學習如何更正式地檢驗這一假設,以及如何證明我們的數據在統計上具有顯著性。
@ -85,7 +85,7 @@
為了了解我們數據的分佈,我們可以繪製一個稱為 **直方圖** 的圖表。X 軸包含若干不同的體重區間(即 **箱**),而 Y 軸顯示隨機變數樣本落在給定區間內的次數。
![真實世界數據的直方圖](../../../../translated_images/zh-TW/weight-histogram.bfd00caf7fc30b145b21e862dba7def41c75635d5280de25d840dd7f0b00545e.png)
![真實世界數據的直方圖](../../../../translated_images/zh-TW/weight-histogram.bfd00caf7fc30b14.webp)
從這個直方圖中可以看出,所有值都集中在某個平均體重附近,距離該體重越遠,該值出現的次數越少。也就是說,棒球運動員的體重與平均體重差異很大的可能性非常小。體重的方差顯示了體重與平均值可能的差異程度。
@ -102,7 +102,7 @@ samples = np.random.normal(mean,std,1000)
如果我們繪製生成樣本的直方圖,我們將看到與上圖非常相似的圖像。如果我們增加樣本數量和箱數,我們可以生成更接近理想的正態分佈圖像:
![平均值=0 和標準差=1 的正態分佈](../../../../translated_images/zh-TW/normal-histogram.dfae0d67c202137d552d0015fb87581eca263925e512404f3c12d8885315432e.png)
![平均值=0 和標準差=1 的正態分佈](../../../../translated_images/zh-TW/normal-histogram.dfae0d67c202137d.webp)
*平均值=0 和標準差=1 的正態分佈*
@ -224,7 +224,7 @@ array([[1. , 0.52959196],
在我們的情況下,值 0.53 表明體重和身高之間存在一定的相關性。我們還可以繪製一個值對另一個值的散點圖,以直觀地查看關係:
![體重與身高的關係](../../../../translated_images/zh-TW/weight-height-relationship.3f06bde4ca2aba9974182c4ef037ed602acd0fbbbbe2ca91cefd838a9e66bcf9.png)
![體重與身高的關係](../../../../translated_images/zh-TW/weight-height-relationship.3f06bde4ca2aba99.webp)
> 更多關於相關性和協方差的示例可以在 [附帶的筆記本](notebook.ipynb) 中找到。

@ -1,6 +1,6 @@
# 資料科學入門
![數據運作](../../../translated_images/zh-TW/data.48e22bb7617d8d92188afbc4c48effb920ba79f5cebdc0652cd9f34bbbd90c18.jpg)
![數據運作](../../../translated_images/zh-TW/data.48e22bb7617d8d92.webp)
> 照片由 <a href="https://unsplash.com/@dawson2406?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Stephen Dawson</a> 提供,來自 <a href="https://unsplash.com/s/photos/data?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,您將了解資料科學的定義,並學習作為資料科學家必須考慮的倫理問題。您還將學習資料的定義,並簡單了解統計與機率,這些是資料科學的核心學術領域。

@ -4,7 +4,7 @@
| :-------------------------------------------------------------------------------------------------------: |
| 使用 Python - _由 [@nitya](https://twitter.com/nitya) 繪製的速記圖_ |
[![介紹影片](../../../../translated_images/zh-TW/video-ds-python.245247dc811db8e4d5ac420246de8a118c63fd28f6a56578d08b630ae549f260.png)](https://youtu.be/dZjWOGbsN4Y)
[![介紹影片](../../../../translated_images/zh-TW/video-ds-python.245247dc811db8e4.webp)](https://youtu.be/dZjWOGbsN4Y)
雖然資料庫提供了非常高效的方式來存儲數據並使用查詢語言進行查詢,但最靈活的數據處理方式是編寫自己的程式來操作數據。在許多情況下,使用資料庫查詢可能更有效。然而,在某些需要更複雜數據處理的情況下,使用 SQL 可能不容易完成。
@ -64,7 +64,7 @@ print(f"Length of index is {len(idx)}")
items_sold = pd.Series(np.random.randint(25,50,size=len(idx)),index=idx)
items_sold.plot()
```
![時間序列圖](../../../../translated_images/zh-TW/timeseries-1.80de678ab1cf727e50e00bcf24009fa2b0a8b90ebc43e34b99a345227d28e467.png)
![時間序列圖](../../../../translated_images/zh-TW/timeseries-1.80de678ab1cf727e.webp)
假設每週我們都會為朋友舉辦派對,並額外拿出 10 盒冰淇淋。我們可以創建另一個以週為索引的 Series 來展示這一點:
```python
@ -75,7 +75,7 @@ additional_items = pd.Series(10,index=pd.date_range(start_date,end_date,freq="W"
total_items = items_sold.add(additional_items,fill_value=0)
total_items.plot()
```
![時間序列圖](../../../../translated_images/zh-TW/timeseries-2.aae51d575c55181ceda81ade8c546a2fc2024f9136934386d57b8a189d7570ff.png)
![時間序列圖](../../../../translated_images/zh-TW/timeseries-2.aae51d575c55181c.webp)
> **注意**:我們並未使用簡單語法 `total_items+additional_items`。如果使用該語法,我們會在結果 Series 中得到許多 `NaN`*非數值*)值。這是因為在 `additional_items` Series 的某些索引點缺少值,而將 `NaN` 與任何值相加會得到 `NaN`。因此,我們需要在相加時指定 `fill_value` 參數。
@ -84,7 +84,7 @@ total_items.plot()
monthly = total_items.resample("1M").mean()
ax = monthly.plot(kind='bar')
```
![每月時間序列平均值](../../../../translated_images/zh-TW/timeseries-3.f3147cbc8c624881008564bc0b5d9fcc15e7374d339da91766bd0e1c6bd9e3af.png)
![每月時間序列平均值](../../../../translated_images/zh-TW/timeseries-3.f3147cbc8c624881.webp)
### DataFrame
@ -210,7 +210,7 @@ df = pd.read_csv('file.csv')
由於我們想展示如何處理數據,我們邀請你打開 [`notebook-covidspread.ipynb`](notebook-covidspread.ipynb) 並從頭到尾閱讀它。你還可以執行單元格,並完成我們在最後為你留下的一些挑戰。
![COVID 傳播](../../../../translated_images/zh-TW/covidspread.f3d131c4f1d260ab0344d79bac0abe7924598dd754859b165955772e1bd5e8a2.png)
![COVID 傳播](../../../../translated_images/zh-TW/covidspread.f3d131c4f1d260ab.webp)
> 如果你不知道如何在 Jupyter Notebook 中運行代碼,請查看 [這篇文章](https://soshnikov.com/education/how-to-execute-notebooks-from-github/)。
@ -232,7 +232,7 @@ df = pd.read_csv('file.csv')
打開 [`notebook-papers.ipynb`](notebook-papers.ipynb) 並從頭到尾閱讀它。你還可以執行單元格,並完成我們在最後為你留下的一些挑戰。
![COVID 醫療處理](../../../../translated_images/zh-TW/covidtreat.b2ba59f57ca45fbcda36e0ddca3f8cfdddeeed6ca879ea7f866d93fa6ec65791.png)
![COVID 醫療處理](../../../../translated_images/zh-TW/covidtreat.b2ba59f57ca45fbc.webp)
## 處理圖像數據

File diff suppressed because one or more lines are too long

@ -1,6 +1,6 @@
# 使用數據
![data love](../../../translated_images/zh-TW/data-love.a22ef29e6742c852505ada062920956d3d7604870b281a8ca7c7ac6f37381d5a.jpg)
![data love](../../../translated_images/zh-TW/data-love.a22ef29e6742c852.webp)
> 圖片由 <a href="https://unsplash.com/@swimstaralex?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Alexander Sinn</a> 提供,來自 <a href="https://unsplash.com/s/photos/data?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,您將學習一些管理、操作和應用數據的方法。您將了解關聯式和非關聯式數據庫,以及數據如何存儲在其中。您還將學習使用 Python 管理數據的基礎知識,並探索使用 Python 管理和挖掘數據的多種方式。

@ -42,7 +42,7 @@ honey.head()
```python
sns.relplot(x="priceperlb", y="state", data=honey, height=15, aspect=.5);
```
![散點圖 1](../../../../translated_images/zh-TW/scatter1.5e1aa5fd6706c5d12b5e503ccb77f8a930f8620f539f524ddf56a16c039a5d2f.png)
![散點圖 1](../../../../translated_images/zh-TW/scatter1.5e1aa5fd6706c5d1.webp)
接下來,使用蜂蜜色調展示價格如何隨年份演變。您可以通過添加 'hue' 參數來顯示年份的變化:
@ -51,7 +51,7 @@ sns.relplot(x="priceperlb", y="state", data=honey, height=15, aspect=.5);
```python
sns.relplot(x="priceperlb", y="state", hue="year", palette="YlOrBr", data=honey, height=15, aspect=.5);
```
![散點圖 2](../../../../translated_images/zh-TW/scatter2.c0041a58621ca702990b001aa0b20cd68c1e1814417139af8a7211a2bed51c5f.png)
![散點圖 2](../../../../translated_images/zh-TW/scatter2.c0041a58621ca702.webp)
通過這種色彩方案的改變,您可以清楚地看到蜂蜜每磅價格在多年來的明顯增長趨勢。事實上,如果您查看數據中的樣本集(例如選擇亞利桑那州),您可以看到價格逐年上漲的模式,僅有少數例外:
@ -80,7 +80,7 @@ sns.relplot(x="priceperlb", y="state", size="year", data=honey, height=15, aspec
```
您可以看到點的大小逐漸增大。
![散點圖 3](../../../../translated_images/zh-TW/scatter3.3c160a3d1dcb36b37900ebb4cf97f34036f28ae2b7b8e6062766c7c1dfc00853.png)
![散點圖 3](../../../../translated_images/zh-TW/scatter3.3c160a3d1dcb36b3.webp)
這是否是一個簡單的供需問題?由於氣候變化和蜂群崩潰等因素,是否每年可供購買的蜂蜜減少,因此價格上漲?
@ -95,7 +95,7 @@ sns.relplot(x="year", y="priceperlb", kind="line", data=honey);
```
答案:是的,但在 2003 年左右有一些例外:
![折線圖 1](../../../../translated_images/zh-TW/line1.f36eb465229a3b1fe385cdc93861aab3939de987d504b05de0b6cd567ef79f43.png)
![折線圖 1](../../../../translated_images/zh-TW/line1.f36eb465229a3b1f.webp)
✅ 由於 Seaborn 將數據聚合到一條線上,它通過繪製均值和均值周圍的 95% 置信區間來顯示「每個 x 值的多個測量值」。[來源](https://seaborn.pydata.org/tutorial/relational.html)。這種耗時的行為可以通過添加 `ci=None` 禁用。
@ -105,7 +105,7 @@ sns.relplot(x="year", y="priceperlb", kind="line", data=honey);
sns.relplot(x="year", y="totalprod", kind="line", data=honey);
```
![折線圖 2](../../../../translated_images/zh-TW/line2.a5b3493dc01058af6402e657aaa9ae1125fafb5e7d6630c777aa60f900a544e4.png)
![折線圖 2](../../../../translated_images/zh-TW/line2.a5b3493dc01058af.webp)
答案:並不完全。如果您查看總產量,實際上在那一年似乎有所增加,儘管總體而言蜂蜜的生產量在這些年中呈下降趨勢。
@ -130,7 +130,7 @@ sns.relplot(
```
在此視覺化中,您可以比較逐年每群蜂的產量和蜂群數量,並將列的包裹設置為 3
![Facet Grid](../../../../translated_images/zh-TW/facet.6a34851dcd540050dcc0ead741be35075d776741668dd0e42f482c89b114c217.png)
![Facet Grid](../../../../translated_images/zh-TW/facet.6a34851dcd540050.webp)
對於這個數據集,逐年和逐州的蜂群數量及其產量並沒有特別突出的地方。是否有其他方式來尋找這兩個變數之間的相關性?
@ -153,7 +153,7 @@ sns.despine(right=False)
plt.ylabel('colony yield')
ax.figure.legend();
```
![疊加折線圖](../../../../translated_images/zh-TW/dual-line.a4c28ce659603fab2c003f4df816733df2bf41d1facb7de27989ec9afbf01b33.png)
![疊加折線圖](../../../../translated_images/zh-TW/dual-line.a4c28ce659603fab.webp)
雖然在 2003 年左右沒有明顯的異常,但這讓我們可以以一個稍微樂觀的結論結束本課:儘管蜂群數量總體上在下降,但蜂群數量正在穩定,即使每群蜂的產量在減少。

@ -58,7 +58,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
```
在這裡,您安裝了 `ggplot2` 套件,然後使用 `library("ggplot2")` 命令將其導入工作空間。要在 ggplot 中繪製任何圖表,使用 `ggplot()` 函數並指定數據集、x 和 y 變量作為屬性。在此情況下,我們使用 `geom_line()` 函數,因為我們的目標是繪製折線圖。
![MaxWingspan-lineplot](../../../../../translated_images/zh-TW/MaxWingspan-lineplot.b12169f99d26fdd263f291008dfd73c18a4ba8f3d32b1fda3d74af51a0a28616.png)
![MaxWingspan-lineplot](../../../../../translated_images/zh-TW/MaxWingspan-lineplot.b12169f99d26fdd2.webp)
您立即注意到什麼似乎至少有一個異常值——那是一個相當大的翼展2000+ 公分的翼展超過 20 公尺——明尼蘇達州有翼龍在漫遊嗎?讓我們調查一下。
@ -76,7 +76,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
```
我們在 `theme` 中指定角度,並分別在 `xlab()``ylab()` 中指定 x 和 y 軸標籤。`ggtitle()` 為圖表/圖形命名。
![MaxWingspan-lineplot-improved](../../../../../translated_images/zh-TW/MaxWingspan-lineplot-improved.04b73b4d5a59552a6bc7590678899718e1f065abe9eada9ebb4148939b622fd4.png)
![MaxWingspan-lineplot-improved](../../../../../translated_images/zh-TW/MaxWingspan-lineplot-improved.04b73b4d5a59552a.webp)
即使將標籤旋轉設置為 45 度,仍然有太多標籤無法閱讀。讓我們嘗試另一種策略:僅標記那些異常值並在圖表內設置標籤。您可以使用散點圖來為標籤留出更多空間:
@ -92,7 +92,7 @@ ggplot(data=birds, aes(x=Name, y=MaxWingspan,group=1)) +
您發現了什麼?
![MaxWingspan-scatterplot](../../../../../translated_images/zh-TW/MaxWingspan-scatterplot.60dc9e0e19d32700283558f253841fdab5104abb62bc96f7d97f9c0ee857fa8b.png)
![MaxWingspan-scatterplot](../../../../../translated_images/zh-TW/MaxWingspan-scatterplot.60dc9e0e19d32700.webp)
## 篩選數據
@ -111,7 +111,7 @@ ggplot(data=birds_filtered, aes(x=Name, y=MaxWingspan,group=1)) +
```
我們創建了一個新的數據框 `birds_filtered`,然後繪製了一個散點圖。通過篩選掉異常值,您的數據現在更加一致且易於理解。
![MaxWingspan-scatterplot-improved](../../../../../translated_images/zh-TW/MaxWingspan-scatterplot-improved.7d0af81658c65f3e75b8fedeb2335399e31108257e48db15d875ece608272051.png)
![MaxWingspan-scatterplot-improved](../../../../../translated_images/zh-TW/MaxWingspan-scatterplot-improved.7d0af81658c65f3e.webp)
現在我們至少在翼展方面有了一個更乾淨的數據集,讓我們進一步了解這些鳥類。
@ -154,7 +154,7 @@ birds_filtered %>% group_by(Category) %>%
```
在以下代碼片段中,我們安裝了 [dplyr](https://www.rdocumentation.org/packages/dplyr/versions/0.7.8) 和 [lubridate](https://www.rdocumentation.org/packages/lubridate/versions/1.8.0) 套件,以幫助操作和分組數據以繪製堆疊條形圖。首先,您按鳥類的 `Category` 分組數據,然後總結 `MinLength`、`MaxLength`、`MinBodyMass`、`MaxBodyMass`、`MinWingspan`、`MaxWingspan` 列。接著,使用 `ggplot2` 套件繪製條形圖並指定不同類別的顏色和標籤。
![Stacked bar chart](../../../../../translated_images/zh-TW/stacked-bar-chart.0c92264e89da7b391a7490224d1e7059a020e8b74dcd354414aeac78871c02f1.png)
![Stacked bar chart](../../../../../translated_images/zh-TW/stacked-bar-chart.0c92264e89da7b39.webp)
然而,這個條形圖因為有太多未分組的數據而難以閱讀。您需要選擇要繪製的數據,因此讓我們看看基於鳥類類別的鳥類長度。
@ -169,7 +169,7 @@ ggplot(birds_count,aes(Category,n))+geom_bar(stat="identity")+coord_flip()
```
您首先計算 `Category` 列中的唯一值,然後將它們排序到新的數據框 `birds_count` 中。這些排序後的數據在相同層次中進行分級,以便按排序方式繪製。使用 `ggplot2`,您接著繪製條形圖。`coord_flip()` 繪製水平條形圖。
![category-length](../../../../../translated_images/zh-TW/category-length.7e34c296690e85d64f7e4d25a56077442683eca96c4f5b4eae120a64c0755636.png)
![category-length](../../../../../translated_images/zh-TW/category-length.7e34c296690e85d6.webp)
此條形圖清楚地顯示了每個類別中鳥類的數量。一眼就能看出,在這個地區,鴨/鵝/水禽類別的鳥類數量最多。明尼蘇達州是“萬湖之地”,所以這並不令人驚訝!
@ -192,7 +192,7 @@ ggplot(birds_grouped,aes(Category,MaxLength))+geom_bar(stat="identity")+coord_fl
```
我們按 `Category` 分組 `birds_filtered` 數據,然後繪製條形圖。
![comparing data](../../../../../translated_images/zh-TW/comparingdata.f486a450d61c7ca5416f27f3f55a6a4465d00df3be5e6d33936e9b07b95e2fdd.png)
![comparing data](../../../../../translated_images/zh-TW/comparingdata.f486a450d61c7ca5.webp)
這裡沒有什麼令人驚訝的:蜂鳥的最大長度比鵜鶘或鵝要小得多。當數據符合邏輯時,這是件好事!
@ -204,7 +204,7 @@ ggplot(data=birds_grouped, aes(x=Category)) +
geom_bar(aes(y=MinLength), stat="identity", position="identity", fill='orange')+
coord_flip()
```
![super-imposed values](../../../../../translated_images/zh-TW/superimposed-values.5363f0705a1da4167625a373a1064331ea3cb7a06a297297d0734fcc9b3819a0.png)
![super-imposed values](../../../../../translated_images/zh-TW/superimposed-values.5363f0705a1da416.webp)
## 🚀 挑戰

@ -36,7 +36,7 @@ ggplot(data=birds_filtered, aes(x=Order, y=MaxLength,group=1)) +
geom_point() +
ggtitle("Max Length per order") + coord_flip()
```
![每目最大長度](../../../../../translated_images/zh-TW/max-length-per-order.e5b283d952c78c12b091307c5d3cf67132dad6fefe80a073353b9dc5c2bd3eb8.png)
![每目最大長度](../../../../../translated_images/zh-TW/max-length-per-order.e5b283d952c78c12.webp)
這提供了每個鳥類目身體長度的一般分佈概覽,但這並不是顯示真實分佈的最佳方式。這項任務通常通過創建直方圖來完成。
## 使用直方圖
@ -47,7 +47,7 @@ ggplot(data=birds_filtered, aes(x=Order, y=MaxLength,group=1)) +
ggplot(data = birds_filtered, aes(x = MaxBodyMass)) +
geom_histogram(bins=10)+ylab('Frequency')
```
![整個數據集的分佈](../../../../../translated_images/zh-TW/distribution-over-the-entire-dataset.d22afd3fa96be854e4c82213fedec9e3703cba753d07fad4606aadf58cf7e78e.png)
![整個數據集的分佈](../../../../../translated_images/zh-TW/distribution-over-the-entire-dataset.d22afd3fa96be854.webp)
如你所見,這個數據集中大多數的 400 多種鳥類的最大體重都在 2000 以下。通過將 `bins` 參數更改為更高的數字,例如 30可以獲得更多的數據洞察
@ -55,7 +55,7 @@ ggplot(data = birds_filtered, aes(x = MaxBodyMass)) +
ggplot(data = birds_filtered, aes(x = MaxBodyMass)) + geom_histogram(bins=30)+ylab('Frequency')
```
![30 個區間的分佈](../../../../../translated_images/zh-TW/distribution-30bins.6a3921ea7a421bf71f06bf5231009e43d1146f1b8da8dc254e99b5779a4983e5.png)
![30 個區間的分佈](../../../../../translated_images/zh-TW/distribution-30bins.6a3921ea7a421bf7.webp)
此圖表以更細緻的方式顯示了分佈。通過確保僅選擇特定範圍內的數據,可以創建一個不那麼偏向左側的圖表:
@ -67,7 +67,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_histogram(bins=30)+ylab('Frequency')
```
![篩選後的直方圖](../../../../../translated_images/zh-TW/filtered-histogram.6bf5d2bfd82533220e1bd4bc4f7d14308f43746ed66721d9ec8f460732be6674.png)
![篩選後的直方圖](../../../../../translated_images/zh-TW/filtered-histogram.6bf5d2bfd8253322.webp)
✅ 嘗試其他篩選條件和數據點。要查看數據的完整分佈,移除 `['MaxBodyMass']` 篩選條件以顯示帶標籤的分佈。
@ -81,7 +81,7 @@ ggplot(data=birds_filtered_1, aes(x=MaxBodyMass, y=MaxLength) ) +
```
看起來這兩個元素沿著預期的軸有一個預期的相關性,其中有一個特別強的匯聚點:
![2D 圖](../../../../../translated_images/zh-TW/2d-plot.c504786f439bd7ebceebf2465c70ca3b124103e06c7ff7214bf24e26f7aec21e.png)
![2D 圖](../../../../../translated_images/zh-TW/2d-plot.c504786f439bd7eb.webp)
直方圖對於數值數據默認效果很好。如果你需要根據文本數據查看分佈該怎麼辦?
## 使用文本數據探索數據集的分佈
@ -112,7 +112,7 @@ ggplot(data=birds_filtered_1, aes(x = MinWingspan, fill = ConservationStatus)) +
scale_fill_manual(name="Conservation Status",values=c("red","green","blue","pink"),labels=c("Endangered","Near Threathened","Vulnerable","Least Concern"))
```
![翼展與保育狀況的對比](../../../../../translated_images/zh-TW/wingspan-conservation-collation.4024e9aa6910866aa82f0c6cb6a6b4b925bd10079e6b0ef8f92eefa5a6792f76.png)
![翼展與保育狀況的對比](../../../../../translated_images/zh-TW/wingspan-conservation-collation.4024e9aa6910866a.webp)
最小翼展與保育狀況之間似乎沒有明顯的相關性。使用此方法測試數據集的其他元素。你也可以嘗試不同的篩選條件。你發現了任何相關性嗎?
@ -126,7 +126,7 @@ ggplot(data=birds_filtered_1, aes(x = MinWingspan, fill = ConservationStatus)) +
ggplot(data = birds_filtered_1, aes(x = MinWingspan)) +
geom_density()
```
![密度圖](../../../../../translated_images/zh-TW/density-plot.675ccf865b76c690487fb7f69420a8444a3515f03bad5482886232d4330f5c85.png)
![密度圖](../../../../../translated_images/zh-TW/density-plot.675ccf865b76c690.webp)
你可以看到,這個圖表反映了之前的最小翼展數據,只是稍微平滑了一些。如果你想重新訪問第二個圖表中那條鋸齒狀的 MaxBodyMass 線,可以通過這種方法非常好地將其平滑化:
@ -134,7 +134,7 @@ ggplot(data = birds_filtered_1, aes(x = MinWingspan)) +
ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_density()
```
![體重密度](../../../../../translated_images/zh-TW/bodymass-smooth.d31ce526d82b0a1f19a073815dea28ecfbe58145ec5337e4ef7e8cdac81120b3.png)
![體重密度](../../../../../translated_images/zh-TW/bodymass-smooth.d31ce526d82b0a1f.webp)
如果你想要一條平滑但不過於平滑的線,可以編輯 `adjust` 參數:
@ -142,7 +142,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
geom_density(adjust = 1/5)
```
![較不平滑的體重](../../../../../translated_images/zh-TW/less-smooth-bodymass.10f4db8b683cc17d17b2d33f22405413142004467a1493d416608dafecfdee23.png)
![較不平滑的體重](../../../../../translated_images/zh-TW/less-smooth-bodymass.10f4db8b683cc17d.webp)
✅ 閱讀此類圖表可用的參數並進行實驗!
@ -152,7 +152,7 @@ ggplot(data = birds_filtered_1, aes(x = MaxBodyMass)) +
ggplot(data=birds_filtered_1,aes(x = MaxBodyMass, fill = Order)) +
geom_density(alpha=0.5)
```
![每目體重](../../../../../translated_images/zh-TW/bodymass-per-order.9d2b065dd931b928c839d8cdbee63067ab1ae52218a1b90717f4bc744354f485.png)
![每目體重](../../../../../translated_images/zh-TW/bodymass-per-order.9d2b065dd931b928.webp)
## 🚀 挑戰

@ -84,7 +84,7 @@ pie(grouped$count,grouped$class, main="Edible?")
```
瞧,一個圓餅圖展示了根據這兩類蘑菇的比例數據。在這裡,正確的標籤順序非常重要,因此請務必確認標籤數組的構建順序!
![圓餅圖](../../../../../translated_images/zh-TW/pie1-wb.685df063673751f4b0b82127f7a52c7f9a920192f22ae61ad28412ba9ace97bf.png)
![圓餅圖](../../../../../translated_images/zh-TW/pie1-wb.685df063673751f4.webp)
## 甜甜圈圖!
@ -119,7 +119,7 @@ library(webr)
PieDonut(habitat, aes(habitat, count=count))
```
![甜甜圈圖](../../../../../translated_images/zh-TW/donut-wb.34e6fb275da9d834c2205145e39a3de9b6878191dcdba6f7a9e85f4b520449bc.png)
![甜甜圈圖](../../../../../translated_images/zh-TW/donut-wb.34e6fb275da9d834.webp)
此代碼使用了兩個庫 - ggplot2 和 webr。使用 webr 庫的 PieDonut 函數,我們可以輕鬆創建甜甜圈圖!
@ -157,7 +157,7 @@ waffle((cap_color$count/10), rows = 7, title = "Waffle Chart")+scale_fill_manual
使用華夫圖,你可以清楚地看到此蘑菇數據集中菌蓋顏色的比例。有趣的是,有許多綠色菌蓋的蘑菇!
![華夫圖](../../../../../translated_images/zh-TW/waffle.aaa75c5337735a6ef32ace0ffb6506ef49e5aefe870ffd72b1bb080f4843c217.png)
![華夫圖](../../../../../translated_images/zh-TW/waffle.aaa75c5337735a6e.webp)
在本課程中,你學到了三種視覺化比例的方法。首先,你需要將數據分組到分類中,然後決定哪種方式最適合顯示數據 - 圓餅圖、甜甜圈圖或華夫圖。這些方法都很有趣,並能讓用戶快速了解數據集。

@ -42,7 +42,7 @@ library(ggplot2)
ggplot(honey, aes(x = priceperlb, y = state)) +
geom_point(colour = "blue")
```
![散點圖 1](../../../../../translated_images/zh-TW/scatter1.86b8900674d88b26dd3353a83fe604e9ab3722c4680cc40ee9beb452ff02cdea.png)
![散點圖 1](../../../../../translated_images/zh-TW/scatter1.86b8900674d88b26.webp)
接下來,使用蜂蜜色彩方案展示價格如何隨年份演變。您可以通過添加 `scale_color_gradientn` 參數來展示年份的變化:
@ -52,7 +52,7 @@ ggplot(honey, aes(x = priceperlb, y = state)) +
ggplot(honey, aes(x = priceperlb, y = state, color=year)) +
geom_point()+scale_color_gradientn(colours = colorspace::heat_hcl(7))
```
![散點圖 2](../../../../../translated_images/zh-TW/scatter2.4d1cbc693bad20e2b563888747eb6bdf65b73ce449d903f7cd4068a78502dcff.png)
![散點圖 2](../../../../../translated_images/zh-TW/scatter2.4d1cbc693bad20e2.webp)
使用這種色彩方案,您可以清楚地看到蜂蜜每磅價格在多年來的明顯增長趨勢。事實上,如果您查看數據中的樣本集(例如選擇亞利桑那州),您可以看到價格逐年上漲的模式,只有少數例外:
@ -83,7 +83,7 @@ ggplot(honey, aes(x = priceperlb, y = state)) +
```
您可以看到點的大小逐漸增大。
![散點圖 3](../../../../../translated_images/zh-TW/scatter3.722d21e6f20b3ea2e18339bb9b10d75906126715eb7d5fdc88fe74dcb6d7066a.png)
![散點圖 3](../../../../../translated_images/zh-TW/scatter3.722d21e6f20b3ea2.webp)
這是否是一個簡單的供需問題?由於氣候變化和蜂群崩壞等因素,是否每年可供購買的蜂蜜減少,導致價格上漲?
@ -98,7 +98,7 @@ qplot(honey$year,honey$priceperlb, geom='smooth', span =0.5, xlab = "year",ylab
```
答案是的但在2003年左右有一些例外
![折線圖 1](../../../../../translated_images/zh-TW/line1.299b576fbb2a59e60a59e7130030f59836891f90302be084e4e8d14da0562e2a.png)
![折線圖 1](../../../../../translated_images/zh-TW/line1.299b576fbb2a59e6.webp)
問題那麼在2003年我們是否也能看到蜂蜜供應的激增如果您查看每年的總產量呢
@ -106,7 +106,7 @@ qplot(honey$year,honey$priceperlb, geom='smooth', span =0.5, xlab = "year",ylab
qplot(honey$year,honey$totalprod, geom='smooth', span =0.5, xlab = "year",ylab = "totalprod")
```
![折線圖 2](../../../../../translated_images/zh-TW/line2.3b18fcda7176ceba5b6689eaaabb817d49c965e986f11cac1ae3f424030c34d8.png)
![折線圖 2](../../../../../translated_images/zh-TW/line2.3b18fcda7176ceba.webp)
答案:並不完全。如果您查看總產量,實際上在那一年似乎有所增加,儘管總的來說蜂蜜的生產量在這些年中呈下降趨勢。
@ -126,7 +126,7 @@ ggplot(honey, aes(x=yieldpercol, y = numcol,group = 1)) +
```
在這個視覺化中您可以比較每年的每群產量和蜂群數量並將列的分面設置為3
![分面網格](../../../../../translated_images/zh-TW/facet.491ad90d61c2a7cc69b50c929f80786c749e38217ccedbf1e22ed8909b65987c.png)
![分面網格](../../../../../translated_images/zh-TW/facet.491ad90d61c2a7cc.webp)
對於這個數據集,關於蜂群數量和每群產量,年份與州之間並沒有特別突出的地方。是否有其他方式可以找到這兩個變數之間的相關性?
@ -143,7 +143,7 @@ plot(honey$year, honey$yieldpercol, pch = 17, col = 3,
axis(side = 4, at = pretty(range(y2)))
mtext("colony yield", side = 4, line = 3)
```
![疊加折線圖](../../../../../translated_images/zh-TW/dual-line.fc4665f360a54018d7df9bc6abcc26460112e17dcbda18d3b9ae6109b32b36c3.png)
![疊加折線圖](../../../../../translated_images/zh-TW/dual-line.fc4665f360a54018.webp)
雖然在2003年沒有明顯的異常但這讓我們可以以一個稍微樂觀的結論結束這節課儘管蜂群數量總體上在下降但蜂群數量正在穩定即使每群產量在減少。

@ -38,25 +38,25 @@
即使數據科學家謹慎地為數據選擇了正確的圖表類型,數據仍然可能以某種方式被展示來證明某個觀點,往往以犧牲數據本身為代價。有許多關於誤導性圖表和信息圖的例子!
[![Alberto Cairo 的《圖表如何說謊》](../../../../../translated_images/zh-TW/tornado.2880ffc7f135f82b5e5328624799010abefd1080ae4b7ecacbdc7d792f1d8849.png)](https://www.youtube.com/watch?v=oX74Nge8Wkw "圖表如何說謊")
[![Alberto Cairo 的《圖表如何說謊》](../../../../../translated_images/zh-TW/tornado.2880ffc7f135f82b.webp)](https://www.youtube.com/watch?v=oX74Nge8Wkw "圖表如何說謊")
> 🎥 點擊上方圖片觀看關於誤導性圖表的會議演講
這張圖表反轉了 X 軸,根據日期顯示了與事實相反的內容:
![壞圖表 1](../../../../../translated_images/zh-TW/bad-chart-1.596bc93425a8ac301a28b8361f59a970276e7b961658ce849886aa1fed427341.png)
![壞圖表 1](../../../../../translated_images/zh-TW/bad-chart-1.596bc93425a8ac30.webp)
[這張圖表](https://media.firstcoastnews.com/assets/WTLV/images/170ae16f-4643-438f-b689-50d66ca6a8d8/170ae16f-4643-438f-b689-50d66ca6a8d8_1140x641.jpg) 更加誤導,因為視線被吸引到右側,讓人得出結論:隨著時間推移,各縣的 COVID 病例數量下降了。事實上,如果仔細查看日期,你會發現它們被重新排列以製造這種誤導性的下降趨勢。
![壞圖表 2](../../../../../translated_images/zh-TW/bad-chart-2.62edf4d2f30f4e519f5ef50c07ce686e27b0196a364febf9a4d98eecd21f9f60.jpg)
![壞圖表 2](../../../../../translated_images/zh-TW/bad-chart-2.62edf4d2f30f4e51.webp)
這個臭名昭著的例子使用了顏色和反轉的 Y 軸來誤導:與其得出槍支友好立法通過後槍支死亡人數激增的結論,事實上視線被誤導以為情況正好相反:
![壞圖表 3](../../../../../translated_images/zh-TW/bad-chart-3.e201e2e915a230bc2cde289110604ec9abeb89be510bd82665bebc1228258972.jpg)
![壞圖表 3](../../../../../translated_images/zh-TW/bad-chart-3.e201e2e915a230bc.webp)
這張奇怪的圖表展示了比例如何被操縱,效果令人啼笑皆非:
![壞圖表 4](../../../../../translated_images/zh-TW/bad-chart-4.8872b2b881ffa96c3e0db10eb6aed7793efae2cac382c53932794260f7bfff07.jpg)
![壞圖表 4](../../../../../translated_images/zh-TW/bad-chart-4.8872b2b881ffa96c.webp)
比較無法比較的事物是另一種陰險的手段。有一個[精彩的網站](https://tylervigen.com/spurious-correlations)專門展示「虛假的相關性」顯示像緬因州離婚率與人造黃油消耗量這樣的「事實」。Reddit 上也有一個群組收集了[數據的醜陋用法](https://www.reddit.com/r/dataisugly/top/?t=all)。
@ -91,13 +91,13 @@
如果你的數據在 X 軸上是文本且冗長,可以將文本傾斜以提高可讀性。[plot3D](https://cran.r-project.org/web/packages/plot3D/index.html) 提供了 3D 繪圖功能,如果你的數據支持的話,可以使用它來製作更高級的數據視覺化。
![3D 圖表](../../../../../translated_images/zh-TW/3d.db1734c151eee87d924989306a00e23f8cddac6a0aab122852ece220e9448def.png)
![3D 圖表](../../../../../translated_images/zh-TW/3d.db1734c151eee87d.webp)
## 動畫和 3D 圖表展示
當今一些最好的數據視覺化是動畫化的。Shirley Wu 使用 D3 創作了許多令人驚嘆的作品,例如「[電影之花](http://bl.ocks.org/sxywu/raw/d612c6c653fb8b4d7ff3d422be164a5d/)」每朵花都是一部電影的視覺化。另一個例子是《衛報》的「Bussed Out」這是一個結合了 Greensock 和 D3 的互動體驗,並採用滾動敘事的文章格式,展示了紐約市如何通過將無家可歸者送出城市來處理這一問題。
![Bussed Out](../../../../../translated_images/zh-TW/busing.8157cf1bc89a3f65052d362a78c72f964982ceb9dcacbe44480e35909c3dce62.png)
![Bussed Out](../../../../../translated_images/zh-TW/busing.8157cf1bc89a3f65.webp)
> 「Bussed Out: How America Moves its Homeless」來自[衛報](https://www.theguardian.com/us-news/ng-interactive/2017/dec/20/bussed-out-america-moves-homeless-people-country-study)。視覺化由 Nadieh Bremer 和 Shirley Wu 創作。
@ -107,7 +107,7 @@
你將完成一個網頁應用,展示這個社交網絡的動畫化視圖。它使用了一個基於 Vue.js 和 D3 的庫來創建[網絡視覺化](https://github.com/emiliorizzo/vue-d3-network)。應用運行時,你可以在屏幕上拖動節點來重新排列數據。
![危險關係](../../../../../translated_images/zh-TW/liaisons.90ce7360bcf8476558f700bbbaf198ad697d5b5cb2829ba141a89c0add7c6ecd.png)
![危險關係](../../../../../translated_images/zh-TW/liaisons.90ce7360bcf84765.webp)
## 專案:使用 D3.js 構建一個展示網絡的圖表

@ -1,6 +1,6 @@
# 視覺化
![一隻蜜蜂停在薰衣草花上](../../../translated_images/zh-TW/bee.0aa1d91132b12e3a8994b9ca12816d05ce1642010d9b8be37f8d37365ba845cf.jpg)
![一隻蜜蜂停在薰衣草花上](../../../translated_images/zh-TW/bee.0aa1d91132b12e3a.webp)
> 照片由 <a href="https://unsplash.com/@jenna2980?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Jenna Lee</a> 提供,來自 <a href="https://unsplash.com/s/photos/bees-in-a-meadow?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
視覺化數據是數據科學家最重要的任務之一。一張圖片勝過千言萬語,視覺化可以幫助你識別數據中的各種有趣部分,例如尖峰、異常值、分組、趨勢等等,這些都能幫助你理解數據背後的故事。

@ -16,7 +16,7 @@
本課程將重點放在生命週期的三個部分:資料捕捉、資料處理和資料維護。
![資料科學生命週期圖示](../../../../translated_images/zh-TW/data-science-lifecycle.a1e362637503c4fb0cd5e859d7552edcdb4aa629a279727008baa121f2d33f32.jpg)
![資料科學生命週期圖示](../../../../translated_images/zh-TW/data-science-lifecycle.a1e362637503c4fb.webp)
> 圖片來源:[Berkeley School of Information](https://ischoolonline.berkeley.edu/data-science/what-is-data-science/)
## 資料捕捉
@ -89,7 +89,7 @@
|團隊資料科學過程 (TDSP)|跨行業標準資料挖掘過程 (CRISP-DM)|
|--|--|
|![團隊資料科學生命週期](../../../../translated_images/zh-TW/tdsp-lifecycle2.e19029d598e2e73d5ef8a4b98837d688ec6044fe332c905d4dbb69eb6d5c1d96.png) | ![資料科學過程聯盟圖示](../../../../translated_images/zh-TW/CRISP-DM.8bad2b4c66e62aa75278009e38e3e99902c73b0a6f63fd605a67c687a536698c.png) |
|![團隊資料科學生命週期](../../../../translated_images/zh-TW/tdsp-lifecycle2.e19029d598e2e73d.webp) | ![資料科學過程聯盟圖示](../../../../translated_images/zh-TW/CRISP-DM.8bad2b4c66e62aa7.webp) |
| 圖片來源:[Microsoft](https://docs.microsoft.comazure/architecture/data-science-process/lifecycle) | 圖片來源:[Data Science Process Alliance](https://www.datascience-pm.com/crisp-dm-2/) |
## [課後測驗](https://ff-quizzes.netlify.app/en/ds/quiz/27)

@ -1,6 +1,6 @@
# 數據科學生命週期
![communication](../../../translated_images/zh-TW/communication.06d8e2a88d30d168d661ad9f9f0a4f947ebff3719719cfdaf9ed00a406a01ead.jpg)
![communication](../../../translated_images/zh-TW/communication.06d8e2a88d30d168.webp)
> 圖片由 <a href="https://unsplash.com/@headwayio?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Headway</a> 提供,來自 <a href="https://unsplash.com/s/photos/communication?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>
在這些課程中,您將探索數據科學生命週期的一些方面,包括數據的分析和溝通。

@ -1,12 +1,12 @@
# 雲端中的數據科學
![cloud-picture](../../../translated_images/zh-TW/cloud-picture.f5526de3c6c6387b2d656ba94f019b3352e5e3854a78440e4fb00c93e2dea675.jpg)
![cloud-picture](../../../translated_images/zh-TW/cloud-picture.f5526de3c6c6387b.webp)
> 照片由 [Jelleke Vanooteghem](https://unsplash.com/@ilumire) 提供,來自 [Unsplash](https://unsplash.com/s/photos/cloud?orientation=landscape)
在處理大數據的數據科學時,雲端可以帶來革命性的改變。在接下來的三節課中,我們將了解什麼是雲端以及它為什麼如此有用。我們還將探索一個心臟衰竭數據集,並建立一個模型來幫助評估某人患心臟衰竭的可能性。我們將利用雲端的強大功能來訓練、部署並以兩種不同的方式使用模型。一種方式是僅使用用戶界面,以低代碼/無代碼的方式進行;另一種方式是使用 Azure 機器學習軟件開發工具包 (Azure ML SDK)。
![project-schema](../../../translated_images/zh-TW/project-schema.420e56d495624541eaecf2b737f138c86fb7d8162bb1c0bf8783c350872ffc4d.png)
![project-schema](../../../translated_images/zh-TW/project-schema.420e56d495624541.webp)
### 主題

@ -32,7 +32,7 @@
* [醫療保健中的數據科學](https://data-flair.training/blogs/data-science-in-healthcare/) - 強調應用如醫學影像(例如 MRI、X光、CT掃描、基因組學DNA測序、藥物開發風險評估、成功預測、預測分析患者護理和供應物流、疾病追蹤和預防等。
![數據科學在現實世界中的應用](../../../../translated_images/zh-TW/data-science-applications.4e5019cd8790ebac2277ff5f08af386f8727cac5d30f77727c7090677e6adb9c.png) 圖片來源:[Data Flair: 6 Amazing Data Science Applications ](https://data-flair.training/blogs/data-science-applications/)
![數據科學在現實世界中的應用](../../../../translated_images/zh-TW/data-science-applications.4e5019cd8790ebac.webp) 圖片來源:[Data Flair: 6 Amazing Data Science Applications ](https://data-flair.training/blogs/data-science-applications/)
該圖展示了其他領域和應用數據科學技術的例子。想探索其他應用嗎?查看下面的[回顧與自學](../../../../6-Data-Science-In-Wild/20-Real-World-Examples)部分。

@ -13,7 +13,7 @@ Explorer界面如下圖所示允許您選擇數據集從提供的選項
2. 探索數據集[目錄](https://planetarycomputer.microsoft.com/catalog)——了解每個數據集的用途。
3. 使用Explorer——選擇一個感興趣的數據集選擇相關的查詢和渲染選項。
![行星電腦Explorer](../../../../translated_images/zh-TW/planetary-computer-explorer.c1e95a9b053167d64e2e8e4347cfb689e47e2037c33103fc1bbea1a149d4f85b.png)
![行星電腦Explorer](../../../../translated_images/zh-TW/planetary-computer-explorer.c1e95a9b053167d6.webp)
`您的任務:`
現在研究瀏覽器中渲染的可視化,並回答以下問題:

@ -1,4 +1,4 @@
# 資料科學初學者課程
# 初學者資料科學課程綱要
[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=344191198)
@ -17,238 +17,248 @@
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
微軟的 Azure Cloud Advocates 很高興提供一套為期 10 週,共 20 課的資料科學課程。每課都包含課前和課後的小測驗、完成課程的書面指導、解答和作業。我們採用以專案為基礎的教學方法,讓您在學習中實作,加強新技能的吸收
微軟 Azure 雲端倡導者很榮幸提供一個為期 10 週、共 20 堂課的完整資料科學課程綱要。每堂課包含課前和課後測驗、完成課程的書面說明、解答以及作業。我們採用專案導向教學法,讓你邊學邊做,這是讓新技能「深植」的有效方式
**衷心感謝我們的作者:** [Jasmine Greenaway](https://www.twitter.com/paladique)、[Dmitry Soshnikov](http://soshnikov.com)、[Nitya Narasimhan](https://twitter.com/nitya)、[Jalen McGee](https://twitter.com/JalenMcG)、[Jen Looper](https://twitter.com/jenlooper)、[Maud Levy](https://twitter.com/maudstweets)、[Tiffany Souterre](https://twitter.com/TiffanySouterre)、[Christopher Harrison](https://www.twitter.com/geektrainer)。
**誠摯感謝我們的作者:** [Jasmine Greenaway](https://www.twitter.com/paladique), [Dmitry Soshnikov](http://soshnikov.com), [Nitya Narasimhan](https://twitter.com/nitya), [Jalen McGee](https://twitter.com/JalenMcG), [Jen Looper](https://twitter.com/jenlooper), [Maud Levy](https://twitter.com/maudstweets), [Tiffany Souterre](https://twitter.com/TiffanySouterre), [Christopher Harrison](https://www.twitter.com/geektrainer)。
**🙏 特別感謝 🙏 我們的 [Microsoft 學生大使](https://studentambassadors.microsoft.com/) 作者、審閱者和內容貢獻者,** 包括 Aaryan Arora、[Aditya Garg](https://github.com/AdityaGarg00)、[Alondra Sanchez](https://www.linkedin.com/in/alondra-sanchez-molina/)、[Ankita Singh](https://www.linkedin.com/in/ankitasingh007)、[Anupam Mishra](https://www.linkedin.com/in/anupam--mishra/)、[Arpita Das](https://www.linkedin.com/in/arpitadas01/)、ChhailBihari Dubey、[Dibri Nsofor](https://www.linkedin.com/in/dibrinsofor)、[Dishita Bhasin](https://www.linkedin.com/in/dishita-bhasin-7065281bb)、[Majd Safi](https://www.linkedin.com/in/majd-s/)、[Max Blum](https://www.linkedin.com/in/max-blum-6036a1186/)、[Miguel Correa](https://www.linkedin.com/in/miguelmque/)、[Mohamma Iftekher (Iftu) Ebne Jalal](https://twitter.com/iftu119)、[Nawrin Tabassum](https://www.linkedin.com/in/nawrin-tabassum)、[Raymond Wangsa Putra](https://www.linkedin.com/in/raymond-wp/)、[Rohit Yadav](https://www.linkedin.com/in/rty2423)、Samridhi Sharma、[Sanya Sinha](https://www.linkedin.com/mwlite/in/sanya-sinha-13aab1200)、
[Sheena Narula](https://www.linkedin.com/in/sheena-narua-n/)、[Tauqeer Ahmad](https://www.linkedin.com/in/tauqeerahmad5201/)、Yogendrasingh Pawar 、[Vidushi Gupta](https://www.linkedin.com/in/vidushi-gupta07/)、[Jasleen Sondhi](https://www.linkedin.com/in/jasleen-sondhi/)
**🙏 特別感謝 🙏 我們的 [Microsoft 學生大使](https://studentambassadors.microsoft.com/) 作者、審稿人與內容貢獻者,** 尤其是 Aaryan Arora, [Aditya Garg](https://github.com/AdityaGarg00), [Alondra Sanchez](https://www.linkedin.com/in/alondra-sanchez-molina/), [Ankita Singh](https://www.linkedin.com/in/ankitasingh007), [Anupam Mishra](https://www.linkedin.com/in/anupam--mishra/), [Arpita Das](https://www.linkedin.com/in/arpitadas01/), ChhailBihari Dubey, [Dibri Nsofor](https://www.linkedin.com/in/dibrinsofor), [Dishita Bhasin](https://www.linkedin.com/in/dishita-bhasin-7065281bb), [Majd Safi](https://www.linkedin.com/in/majd-s/), [Max Blum](https://www.linkedin.com/in/max-blum-6036a1186/), [Miguel Correa](https://www.linkedin.com/in/miguelmque/), [Mohamma Iftekher (Iftu) Ebne Jalal](https://twitter.com/iftu119), [Nawrin Tabassum](https://www.linkedin.com/in/nawrin-tabassum), [Raymond Wangsa Putra](https://www.linkedin.com/in/raymond-wp/), [Rohit Yadav](https://www.linkedin.com/in/rty2423), Samridhi Sharma, [Sanya Sinha](https://www.linkedin.com/mwlite/in/sanya-sinha-13aab1200),
[Sheena Narula](https://www.linkedin.com/in/sheena-narua-n/), [Tauqeer Ahmad](https://www.linkedin.com/in/tauqeerahmad5201/), Yogendrasingh Pawar , [Vidushi Gupta](https://www.linkedin.com/in/vidushi-gupta07/), [Jasleen Sondhi](https://www.linkedin.com/in/jasleen-sondhi/)
|![Sketchnote by @sketchthedocs https://sketchthedocs.dev](../../translated_images/zh-TW/00-Title.8af36cd35da1ac55.webp)|
|:---:|
| 資料科學初學者 - _手繪筆記 由 [@nitya](https://twitter.com/nitya) 提供_ |
| 初學者資料科學 - _手繪筆記由 [@nitya](https://twitter.com/nitya) 製作_ |
### 🌐 多語言支援
#### 透過 GitHub Action 支援(自動且保持最新)
#### 透過 GitHub Action 支援(自動且持續更新)
<!-- CO-OP TRANSLATOR LANGUAGES TABLE START -->
[Arabic](../ar/README.md) | [Bengali](../bn/README.md) | [Bulgarian](../bg/README.md) | [Burmese (Myanmar)](../my/README.md) | [Chinese (Simplified)](../zh-CN/README.md) | [Chinese (Traditional, Hong Kong)](../zh-HK/README.md) | [Chinese (Traditional, Macau)](../zh-MO/README.md) | [Chinese (Traditional, Taiwan)](./README.md) | [Croatian](../hr/README.md) | [Czech](../cs/README.md) | [Danish](../da/README.md) | [Dutch](../nl/README.md) | [Estonian](../et/README.md) | [Finnish](../fi/README.md) | [French](../fr/README.md) | [German](../de/README.md) | [Greek](../el/README.md) | [Hebrew](../he/README.md) | [Hindi](../hi/README.md) | [Hungarian](../hu/README.md) | [Indonesian](../id/README.md) | [Italian](../it/README.md) | [Japanese](../ja/README.md) | [Kannada](../kn/README.md) | [Korean](../ko/README.md) | [Lithuanian](../lt/README.md) | [Malay](../ms/README.md) | [Malayalam](../ml/README.md) | [Marathi](../mr/README.md) | [Nepali](../ne/README.md) | [Nigerian Pidgin](../pcm/README.md) | [Norwegian](../no/README.md) | [Persian (Farsi)](../fa/README.md) | [Polish](../pl/README.md) | [Portuguese (Brazil)](../pt-BR/README.md) | [Portuguese (Portugal)](../pt-PT/README.md) | [Punjabi (Gurmukhi)](../pa/README.md) | [Romanian](../ro/README.md) | [Russian](../ru/README.md) | [Serbian (Cyrillic)](../sr/README.md) | [Slovak](../sk/README.md) | [Slovenian](../sl/README.md) | [Spanish](../es/README.md) | [Swahili](../sw/README.md) | [Swedish](../sv/README.md) | [Tagalog (Filipino)](../tl/README.md) | [Tamil](../ta/README.md) | [Telugu](../te/README.md) | [Thai](../th/README.md) | [Turkish](../tr/README.md) | [Ukrainian](../uk/README.md) | [Urdu](../ur/README.md) | [Vietnamese](../vi/README.md)
[阿拉伯文](../ar/README.md) | [孟加拉文](../bn/README.md) | [保加利亞文](../bg/README.md) | [緬甸文](../my/README.md) | [中文(簡體)](../zh-CN/README.md) | [中文(繁體,香港)](../zh-HK/README.md) | [中文(繁體,澳門)](../zh-MO/README.md) | [中文(繁體,台灣)](./README.md) | [克羅埃西亞文](../hr/README.md) | [捷克文](../cs/README.md) | [丹麥文](../da/README.md) | [荷蘭文](../nl/README.md) | [愛沙尼亞文](../et/README.md) | [芬蘭文](../fi/README.md) | [法文](../fr/README.md) | [德文](../de/README.md) | [希臘文](../el/README.md) | [希伯來文](../he/README.md) | [印地文](../hi/README.md) | [匈牙利文](../hu/README.md) | [印尼文](../id/README.md) | [義大利文](../it/README.md) | [日文](../ja/README.md) | [坎那達文](../kn/README.md) | [韓文](../ko/README.md) | [立陶宛文](../lt/README.md) | [馬來文](../ms/README.md) | [馬拉雅拉姆文](../ml/README.md) | [馬拉地文](../mr/README.md) | [尼泊爾文](../ne/README.md) | [奈及利亞派金語](../pcm/README.md) | [挪威文](../no/README.md) | [波斯文(法爾西)](../fa/README.md) | [波蘭文](../pl/README.md) | [葡萄牙文(巴西)](../pt-BR/README.md) | [葡萄牙文(葡萄牙)](../pt-PT/README.md) | [旁遮普文(古爾穆奇)](../pa/README.md) | [羅馬尼亞文](../ro/README.md) | [俄文](../ru/README.md) | [塞爾維亞文(西里爾)](../sr/README.md) | [斯洛伐克文](../sk/README.md) | [斯洛文尼亞文](../sl/README.md) | [西班牙文](../es/README.md) | [斯瓦希里文](../sw/README.md) | [瑞典文](../sv/README.md) | [他加祿文(菲律賓語)](../tl/README.md) | [泰米爾文](../ta/README.md) | [泰盧固文](../te/README.md) | [泰文](../th/README.md) | [土耳其文](../tr/README.md) | [烏克蘭文](../uk/README.md) | [烏爾都文](../ur/README.md) | [越南文](../vi/README.md)
> **偏好本地複製?**
> 本儲存庫包含 50 多種語言翻譯,會顯著增加下載大小。若要在無翻譯的情況下進行稀疏檢出,請用 sparse checkout
> **偏好在本機端克隆?**
>
> 本專案包含 50 多種語言的翻譯,這會大幅增加下載大小。若要不含翻譯檔案克隆,請使用稀疏檢出:
>
> **Bash / macOS / Linux:**
> ```bash
> git clone --filter=blob:none --sparse https://github.com/microsoft/Data-Science-For-Beginners.git
> cd Data-Science-For-Beginners
> git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'
> ```
> 這樣可讓您以更快的速度取得完成課程所需的內容。
>
> **CMD (Windows):**
> ```cmd
> git clone --filter=blob:none --sparse https://github.com/microsoft/Data-Science-For-Beginners.git
> cd Data-Science-For-Beginners
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> 這樣將為你提供完成課程所需的所有內容,而且下載速度更快。
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**如需支援其他翻譯語言,請參考[這裡](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
**如果你希望支援其他翻譯語言,請參考 [此處](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
#### 加入我們的社群
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
我們正在舉辦 Discord 學習 AI 系列,了解更多並加入我們,活動時間為 2025 年 9 月 18 日至 30 日,詳見 [Learn with AI Series](https://aka.ms/learnwithai/discord)。您將獲得使用 GitHub Copilot 進行資料科學的秘訣與技巧。
我們有一個持續進行中的 Discord 「與 AI 一起學習」系列講座,詳情與加入請訪問 [與 AI 一起學習系列](https://aka.ms/learnwithai/discord),時間為 2025 年 9 月 18 日至 30 日。你將獲得使用 GitHub Copilot 進行資料科學的技巧與秘訣
![Learn with AI series](../../translated_images/zh-TW/1.2b28cdc6205e26fe.webp)
# 是學生嗎?
# 是學生嗎?
請從以下資源開始
開始使用以下資源
- [學生中心頁面](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-77958-bethanycheum) 在此頁面,您將找到初學者資源、學生套裝包,甚至還有獲取免費認證券的方法。這是一個您想要加入書籤並定期查看的頁面,因為我們每月至少會更新內容一次。
- [Microsoft Learn 學生大使](https://studentambassadors.microsoft.com?WT.mc_id=academic-77958-bethanycheum) 加入全球學生大使社群,這可能是您進入微軟的一條途徑
- [學生中心頁面](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-77958-bethanycheum) 在此頁面中,你會找到初學者資源、學生包甚至免費證書優惠券。這是一個你應該加入書籤並定期查看的頁面,因為我們每月至少會更新內容一次。
- [Microsoft Learn 學生大使](https://studentambassadors.microsoft.com?WT.mc_id=academic-77958-bethanycheum) 加入學生大使全球社群,這可能是你進入微軟的管道
# 開始使用
# 入門指南
## 📚 文件說明
## 📚 文
- **[安裝指南](INSTALLATION.md)** - 初學者逐步設定說明
- **[使用指南](USAGE.md)** - 範例與常工作流程
- **[安裝指南](INSTALLATION.md)** - 初學者逐步設定教學
- **[使用指南](USAGE.md)** - 範例與常工作流程
- **[故障排除](TROUBLESHOOTING.md)** - 常見問題解決方案
- **[貢獻指南](CONTRIBUTING.md)** - 怎麼為此計劃做出貢獻
- **[給教師的指南](for-teachers.md)** - 教學指導與課堂資源
- **[貢獻指南](CONTRIBUTING.md)** - 如何為本專案貢獻
- **[教師專用](for-teachers.md)** - 教學指導與課堂資源
## 👨‍🎓 學生
> **完全初學者**剛接觸資料科學嗎?從我們的[初學者範例](examples/README.md)開始!這些簡單且有良好註解的範例將幫助您先掌握基礎,然後再深入整個課程。
> **[學生](https://aka.ms/student-page)**若想自行使用此課程,請先將整個儲存庫分叉,自行完成練習,並從課前小測開始。再閱讀課程內容並完成其他活動。請嘗試透過理解課程內容來創建專案,而非僅複製解答程式碼;不過,每堂專案導向課程的 /solutions 資料夾中亦提供了解答程式碼。另一個想法是與朋友組成學習小組,一同進行內容學習。若想進一步學習,我們推薦[Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/qprpajyoy3x0g7?WT.mc_id=academic-77958-bethanycheum)。
## 👨‍🎓 學生專區
> **完全初學者**資料科學新手?請先從我們的[初學者友善範例](examples/README.md)開始!這些簡單且有詳細註解的範例將幫助你理解基本概念,再進入完整課程。
> **[學生](https://aka.ms/student-page)**自行使用本課程綱要,請 Fork 整個倉庫並獨立完成練習,從課前測驗開始。然後閱讀課程內容並完成其餘活動。盡量透過理解課程自行建立專案,而非直接複製解答程式碼;不過,每個專案導向課程中 /solutions 資料夾提供了完整程式碼解答。另一個方法是和朋友組成讀書會,一起學習內容。深入研究建議透過 [Microsoft Learn](https://docs.microsoft.com/en-us/users/jenlooper-2911/collections/qprpajyoy3x0g7?WT.mc_id=academic-77958-bethanycheum)。
**快速開始:**
1. 查看[安裝指南](INSTALLATION.md)來設定您的環境
2. 參考[使用指南](USAGE.md)了解課程如何使用
3. 從第一課開始,依序完成
4. 加入我們的[Discord 社群](https://aka.ms/ds4beginners/discord)尋求支援
**快速開始**
1. 查看 [安裝指南](INSTALLATION.md) 以設定環境
2. 閱讀 [使用指南](USAGE.md) 了解課程使用方式
3. 從第 1 課開始,按順序完成
4. 加入我們的 [Discord 社群](https://aka.ms/ds4beginners/discord) 尋求支援
## 👩‍🏫 給教師
## 👩‍🏫 教師專區
> **教師們**:我們已經[包含了一些建議](for-teachers.md)來說明如何使用這份課程內容。我們非常期待您在[討論論壇](https://github.com/microsoft/Data-Science-For-Beginners/discussions)中的回饋!
> **教師們**:我們已經[包含了一些建議](for-teachers.md)供您使用本課程。期待您在[討論區](https://github.com/microsoft/Data-Science-For-Beginners/discussions)提供寶貴意見!
## 認識團隊
[![推廣影片](../../ds-for-beginners.gif)](https://youtu.be/8mzavjQSMM4 "推廣影片")
[![宣傳影片](../../ds-for-beginners.gif)](https://youtu.be/8mzavjQSMM4 "宣傳影片")
**GIF 製作者** [Mohit Jaisal](https://www.linkedin.com/in/mohitjaisal)
**動圖作者** [Mohit Jaisal](https://www.linkedin.com/in/mohitjaisal)
> 🎥 點擊上方圖片觀看有關該專案及其創作者的影片!
> 🎥 點擊上方圖片觀看關於此專案及其創作者的影片!
## 教學
## 教學理念
在建構此課程時,我們選擇了兩個教學理念:確保課程以專案為基礎,並且包含頻繁的測驗。完成此系列課程後,學生將學會資料科學的基本原理,包括倫理概念、資料準備、不同的資料處理方法、資料視覺化、資料分析、資料科學的實際應用案例等。
我們在建立這個課程時選擇了兩個教學原則:確保它以專案為基礎,且包含頻繁的小測驗。在本系列課程結束時,學生將學會數據科學的基本原則,包括倫理概念、數據準備、處理數據的不同方式、數據視覺化、數據分析、數據科學的真實案例等。
此外,課前的低壓力測驗可幫助學生設定學習某主題的意圖,而課後第二次測驗則可加強記憶。此課程設計靈活且有趣,可全部或部分修習。專案從簡單開始,到第十週結束時變得越來越複雜。
此外,課前的小測能使學生設定學習主題的目標而課後的第二次小測則確保進一步記憶。這個課程設計靈活且有趣您可以全部學習或部分選擇學習。專案從簡單開始到第10週結束時會逐漸複雜。
> 請查閱我們的[行為守則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)、[翻譯指南](TRANSLATIONS.md)。我們歡迎您的建設性回饋!
> 請參考我們的[行為守則](CODE_OF_CONDUCT.md)、[貢獻指南](CONTRIBUTING.md)、[翻譯指南](TRANSLATIONS.md)。歡迎您的建設性回饋!
## 每堂課包含:
- 可選的速寫筆記
- 可選的補充影片
- 課前熱身測
- 選擇性手繪筆記
- 選擇性補充影片
- 課前熱身
- 書面課程內容
- 專案課程逐步專案建置指南
- 專案課程附上逐步專案建置指南
- 知識檢測
- 挑戰題
- 補充閱讀
- 作業
- [課後](https://ff-quizzes.netlify.app/en/)
- [課後測](https://ff-quizzes.netlify.app/en/)
> **關於測驗的說明**:所有測驗皆包含在 Quiz-App 資料夾內總共有40個測驗每個測驗含三個問題。它們在課程中有連結但測驗應用程式可以在本地運行或部署到 Azure請依照 `quiz-app` 資料夾中的說明操作。測驗也正在逐步本地化。
> **關於小測的說明**:所有小測均位於 Quiz-App 資料夾中共40個小測每個含三題。課程中有連結且小測應用可以本機執行或部署至 Azure請參照 `quiz-app` 資料夾中的說明。小測正在逐步本地化。
## 🎓 初學者友善範例
## 🎓 適合初學者的範例
**剛接觸資料科學?** 我們準備了一個特別的[範例目錄](examples/README.md),包含簡單且註解詳盡的程式碼,幫助你快速入門:
**剛接觸數據科學嗎?** 我們特別建立了一個[範例目錄](examples/README.md),提供簡單且註解良好的程式碼,幫助您入門:
- 🌟 **Hello World** - 你的第一個資料科學程式
- 📂 **載入資料** - 學習讀取與探索資料集
- 📊 **簡單分析** - 計算統計與尋找模式
- 📈 **本視覺化** - 製作圖表和圖形
- 🔬 **際專案** - 完整的工作流程,從頭到尾
- 🌟 **Hello World** - 您的第一個數據科學程式
- 📂 **讀取資料** - 學習閱讀與探索資料集
- 📊 **簡單分析** - 計算統計資料與尋找模式
- 📈 **礎視覺化** - 建立圖表與繪圖
- 🔬 **務專案** - 從開始到完成的完整工作流程
每個範例都包含詳細註解說明每個步驟,非常適合完全初學者
每個範例都包含詳細註解,說明每一步驟,是絕對初學者的理想教材
👉 **[從範例開始](examples/README.md)** 👈
## 課程列表
|![ 速寫筆記由 @sketchthedocs 製作 https://sketchthedocs.dev](../../translated_images/zh-TW/00-Roadmap.4905d6567dff4753.webp)|
|![ @sketchthedocs 手繪筆記 https://sketchthedocs.dev](../../translated_images/zh-TW/00-Roadmap.4905d6567dff4753.webp)|
|:---:|
| 初學者資料科學藍圖 - _速寫筆記由 [@nitya](https://twitter.com/nitya) 製作_ |
| 課程編號 | 主題 | 課程群組 | 學習目標 | 相關課程 | 作者 |
| :------: | :----------------------------------------: | :--------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------: | :----: |
| 01 | 定義資料科學 | [介紹](1-Introduction/README.md) | 了解資料科學的基本概念及其與人工智慧、機器學習及大數據的關係。 | [課程](1-Introduction/01-defining-data-science/README.md) [影片](https://youtu.be/beZ7Mb_oz9I) | [Dmitry](http://soshnikov.com) |
| 02 | 資料科學倫理 | [介紹](1-Introduction/README.md) | 探討資料倫理的概念、挑戰與框架。 | [課程](1-Introduction/02-ethics/README.md) | [Nitya](https://twitter.com/nitya) |
| 03 | 定義資料 | [介紹](1-Introduction/README.md) | 資料的分類方法與常見來源。 | [課程](1-Introduction/03-defining-data/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 04 | 統計與機率入門 | [](1-Introduction/README.md) | 使用機率與統計的數學技術來理解資料。 | [課程](1-Introduction/04-stats-and-probability/README.md) [影片](https://youtu.be/Z5Zy85g4Yjw) | [Dmitry](http://soshnikov.com) |
| 05 | 使用關聯式資料 | [資料操作](2-Working-With-Data/README.md) | 介紹關聯式資料並教授使用結構化查詢語言SQL讀作“see-quell”探索和分析關聯資料的基礎。 | [課程](2-Working-With-Data/05-relational-databases/README.md) | [Christopher](https://www.twitter.com/geektrainer) |
| 06 | 使用 NoSQL 資料 | [資料操作](2-Working-With-Data/README.md) | 介紹非關聯資料、其類型及文檔資料庫的探索與分析基礎。 | [課程](2-Working-With-Data/06-non-relational/README.md) | [Jasmine](https://twitter.com/paladique) |
| 07 | 使用 Python | [資料操作](2-Working-With-Data/README.md) | 利用 Pandas 等程式庫進行資料探索的 Python 基礎。建議有 Python 程式基礎。 | [課程](2-Working-With-Data/07-python/README.md) [影片](https://youtu.be/dZjWOGbsN4Y) | [Dmitry](http://soshnikov.com) |
| 08 | 資料準備 | [資料操作](2-Working-With-Data/README.md) | 資料清理和轉換技巧,處理缺失、不準確或不完整資料的挑戰。 | [課程](2-Working-With-Data/08-data-preparation/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 09 | 數量視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 使用 Matplotlib 視覺化鳥類資料 🦆 | [課程](3-Data-Visualization/09-visualization-quantities/README.md) | [Jen](https://twitter.com/jenlooper) |
| 10 | 資料分布視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化區間內的觀察與趨勢。 | [課程](3-Data-Visualization/10-visualization-distributions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 11 | 比例視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化離散和分組的百分比。 | [課程](3-Data-Visualization/11-visualization-proportions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 12 | 關係視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化資料集及其變數間的連結和關聯。 | [課程](3-Data-Visualization/12-visualization-relationships/README.md) | [Jen](https://twitter.com/jenlooper) |
| 13 | 有意義的視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 製作有價值的視覺化,協助有效解決問題和獲得洞見的技巧與指導。 | [課程](3-Data-Visualization/13-meaningful-visualizations/README.md) | [Jen](https://twitter.com/jenlooper) |
| 14 | 資料科學生命週期介紹 | [生命週期](4-Data-Science-Lifecycle/README.md) | 介紹資料科學生命週期及其第一步:獲取與提取資料。 | [課程](4-Data-Science-Lifecycle/14-Introduction/README.md) | [Jasmine](https://twitter.com/paladique) |
| 15 | 資料分析 | [生命週期](4-Data-Science-Lifecycle/README.md) | 著重於資料科學生命週期中分析資料的技術。 | [課程](4-Data-Science-Lifecycle/15-analyzing/README.md) | [Jasmine](https://twitter.com/paladique) |
| 16 | 溝通 | [生命週期](4-Data-Science-Lifecycle/README.md) | 著重於資料科學生命週期中,以便於決策者理解的方式呈現資料洞見。 | [課程](4-Data-Science-Lifecycle/16-communication/README.md) | [Jalen](https://twitter.com/JalenMcG) |
| 17 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 本系列課程介紹雲端資料科學及其優點。 | [課程](5-Data-Science-In-Cloud/17-Introduction/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 18 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用低代碼工具訓練模型。 | [課程](5-Data-Science-In-Cloud/18-Low-Code/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 19 | 雲端資料科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用 Azure 機器學習工作室部署模型。 | [課程](5-Data-Science-In-Cloud/19-Azure/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 20 | 實地資料科學 | [實地](6-Data-Science-In-Wild/README.md) | 真實世界中資料科學驅動的專案。 | [課程](6-Data-Science-In-Wild/20-Real-World-Examples/README.md) | [Nitya](https://twitter.com/nitya) |
| 數據科學初學者路線圖 - _手繪筆記作者 [@nitya](https://twitter.com/nitya)_ |
| 課程編號 | 主題 | 所屬單元 | 學習目標 | 連結課程 | 作者 |
| :-----------: | :----------------------------------------: | :--------------------------------------------------: | :-----------------------------------------------------------------------------------------------------------------------------------------------------------------------: | :---------------------------------------------------------------------: | :----: |
| 01 | 定義數據科學 | [簡介](1-Introduction/README.md) | 學習數據科學背後的基本概念,以及它與人工智慧、機器學習和大數據的關係。 | [課程](1-Introduction/01-defining-data-science/README.md) [影片](https://youtu.be/beZ7Mb_oz9I) | [Dmitry](http://soshnikov.com) |
| 02 | 數據科學倫理 | [簡介](1-Introduction/README.md) | 數據倫理的概念、挑戰與框架。 | [課程](1-Introduction/02-ethics/README.md) | [Nitya](https://twitter.com/nitya) |
| 03 | 定義數據 | [簡介](1-Introduction/README.md) | 數據如何分類及其常見來源。 | [課程](1-Introduction/03-defining-data/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 04 | 統計與機率入門 | [介](1-Introduction/README.md) | 使用機率與統計的數學技術來理解數據。 | [課程](1-Introduction/04-stats-and-probability/README.md) [影片](https://youtu.be/Z5Zy85g4Yjw) | [Dmitry](http://soshnikov.com) |
| 05 | 使用關聯式資料庫 | [處理資料](2-Working-With-Data/README.md) | 關於關聯式資料庫的介紹以及使用結構化查詢語言SQL讀作“see-quell”探究與分析關聯資料的基礎。 | [課程](2-Working-With-Data/05-relational-databases/README.md) | [Christopher](https://www.twitter.com/geektrainer) | | |
| 06 | 使用非關聯式資料庫 | [處理資料](2-Working-With-Data/README.md) | 非關聯式資料的介紹、不同類型及探究與分析文件型資料庫的基礎。 | [課程](2-Working-With-Data/06-non-relational/README.md) | [Jasmine](https://twitter.com/paladique)|
| 07 | 使用 Python | [處理資料](2-Working-With-Data/README.md) | 使用 Python 進行資料探索的基礎,包含 Pandas 等函式庫。建議具備 Python 程式設計的基礎認識。 | [課程](2-Working-With-Data/07-python/README.md) [影片](https://youtu.be/dZjWOGbsN4Y) | [Dmitry](http://soshnikov.com) |
| 08 | 資料準備 | [處理資料](2-Working-With-Data/README.md) | 探討清洗與轉換資料的技術,以應對缺失、不準確或不完整資料的挑戰。 | [課程](2-Working-With-Data/08-data-preparation/README.md) | [Jasmine](https://www.twitter.com/paladique) |
| 09 | 數量視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 學習使用 Matplotlib 視覺化鳥類資料 🦆 | [課程](3-Data-Visualization/09-visualization-quantities/README.md) | [Jen](https://twitter.com/jenlooper) |
| 10 | 資料分布視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化區間內的觀察與趨勢。 | [課程](3-Data-Visualization/10-visualization-distributions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 11 | 比例視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化離散及分組百分比。 | [課程](3-Data-Visualization/11-visualization-proportions/README.md) | [Jen](https://twitter.com/jenlooper) |
| 12 | 關係視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 視覺化數據集及其變數間的關聯與相關性。 | [課程](3-Data-Visualization/12-visualization-relationships/README.md) | [Jen](https://twitter.com/jenlooper) |
| 13 | 有意義的視覺化 | [資料視覺化](3-Data-Visualization/README.md) | 製作有效且有助於問題解決與洞察的視覺化技巧與指導。 | [課程](3-Data-Visualization/13-meaningful-visualizations/README.md) | [Jen](https://twitter.com/jenlooper) |
| 14 | 數據科學生命週期入門 | [生命週期](4-Data-Science-Lifecycle/README.md) | 介紹數據科學生命週期及其第一步:獲取與擷取資料。 | [課程](4-Data-Science-Lifecycle/14-Introduction/README.md) | [Jasmine](https://twitter.com/paladique) |
| 15 | 分析階段 | [生命週期](4-Data-Science-Lifecycle/README.md) | 數據科學生命週期中專注於資料分析的方法。 | [課程](4-Data-Science-Lifecycle/15-analyzing/README.md) | [Jasmine](https://twitter.com/paladique) | | |
| 16 | 溝通階段 | [生命週期](4-Data-Science-Lifecycle/README.md) | 專注於將數據洞察以便決策者理解的方式呈現。 | [課程](4-Data-Science-Lifecycle/16-communication/README.md) | [Jalen](https://twitter.com/JalenMcG) | | |
| 17 | 雲端數據科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 本系列課程介紹雲端數據科學及其優勢。 | [課程](5-Data-Science-In-Cloud/17-Introduction/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 18 | 雲端數據科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用低代碼工具訓練模型。 |[課程](5-Data-Science-In-Cloud/18-Low-Code/README.md) | [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 19 | 雲端數據科學 | [雲端資料](5-Data-Science-In-Cloud/README.md) | 使用 Azure Machine Learning Studio 部署模型。 | [課程](5-Data-Science-In-Cloud/19-Azure/README.md)| [Tiffany](https://twitter.com/TiffanySouterre) [Maud](https://twitter.com/maudstweets) |
| 20 | 野外的數據科學 | [實戰](6-Data-Science-In-Wild/README.md) | 真實世界中由數據科學推動的專案。 | [課程](6-Data-Science-In-Wild/20-Real-World-Examples/README.md) | [Nitya](https://twitter.com/nitya) |
## GitHub Codespaces
請依下列步驟在 Codespace 中開啟此範例:
1. 點擊 Code 下拉選單選擇「Open with Codespaces」選項。
2. 在畫面底部選擇「+ New codespace」。
欲了解更多資訊,請參閱[GitHub 文件](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository#creating-a-codespace)。
按照以下步驟在 Codespace 中開啟此範例:
## VSCode Remote - Containers
1. 點選 Code 下拉選單,並選擇 Open with Codespaces。
2. 在視窗下方選擇 + New codespace。
更多資訊,請參考[GitHub 文件](https://docs.github.com/en/codespaces/developing-in-codespaces/creating-a-codespace-for-a-repository#creating-a-codespace)。
請按照以下步驟,利用你的本機與 VSCode並使用 VS Code Remote - Containers 擴充功能,將此程式庫開啟於容器中:
## VSCode Remote - Containers
遵循以下步驟,使用您的本機電腦與 VSCode 中的 VS Code Remote - Containers 延伸功能,在容器中開啟此倉庫:
1. 若你是首次使用開發容器,請確保系統符合[入門文件](https://code.visualstudio.com/docs/devcontainers/containers#_getting-started)中所列的先決條件(如安裝 Docker
1. 若您是首次使用開發容器,請確認您的系統符合前置需求(如已安裝 Docker詳見[快速入門文件](https://code.visualstudio.com/docs/devcontainers/containers#_getting-started)。
使用此程式庫時,可以開啟於獨立的 Docker 卷中
使用此倉庫,您可選擇在獨立 Docker 卷中打開
**注意**:此操作會在底層執行 Remote-Containers 的 **Clone Repository in Container Volume...**令,將原始碼克隆至 Docker 卷,而非本地檔案系統。[卷](https://docs.docker.com/storage/volumes/)是持久化容器資料的推薦機制
**注意**:此操作底層會使用 Remote-Containers 的 **Clone Repository in Container Volume...**令,將原始碼克隆至 Docker 卷,而非本地檔案系統。[卷](https://docs.docker.com/storage/volumes/) 是持久化容器資料的建議方式
者開啟本地已克隆或下載的版本:
打開本地已克隆或下載的倉庫副本:
- 將此程式庫克隆到本地檔案系統。
- 按 F1 鍵並選擇 **Remote-Containers: Open Folder in Container...**令。
- 選擇該資料夾的本地克隆版本,等待容器啟動,開始操作
- 將此倉庫克隆至本地檔案系統。
- 按 F1,選擇 **Remote-Containers: Open Folder in Container...**令。
- 選擇此資料夾的克隆副本,等待容器啟動,然後開始使用
## 離線存取
## 離線使用
你可以透過 [Docsify](https://docsify.js.org/#/) 離線瀏覽本文件。請複製此程式庫,於本地安裝 Docsify然後在本資料夾根目錄輸入 `docsify serve`。網站將在本地端的 3000 埠執行`localhost:3000`。
您可以使用 [Docsify](https://docsify.js.org/#/) 離線瀏覽本文件。請 fork 此倉庫,並在您的本機安裝 [Docsify](https://docsify.js.org/#/quickstart),接著在此倉庫根目錄中輸入 `docsify serve`。網站將以本機端口3000提供服務`localhost:3000`。
> 注意,筆記本檔案不會透過 Docsify 呈現,因此執行筆記本時,請另行於 VS Code 中啟動 Python 核心執行。
> 注意,筆記本文件無法用 Docsify 呈現,若需運行筆記本,請在 VS Code 中使用 Python 核心另行執行。
## 其他課程
我們團隊還製作其他課程!請參考:
我們團隊還其他課程!請參考:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
[![LangChain4j 初學者](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js 入門](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain 入門](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain4j 基礎教學](https://img.shields.io/badge/LangChain4j%20for%20Beginners-22C55E?style=for-the-badge&&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchain4j-for-beginners)
[![LangChain.js for Beginners](https://img.shields.io/badge/LangChain.js%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://aka.ms/langchainjs-for-beginners?WT.mc_id=m365-94501-dwahlin)
[![LangChain for Beginners](https://img.shields.io/badge/LangChain%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=0553D6)](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / 代理人
[![AZD 入門](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI 入門](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP 入門](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI 代理人入門](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
### Azure / Edge / MCP / Agents
[![AZD for Beginners](https://img.shields.io/badge/AZD%20for%20Beginners-0078D4?style=for-the-badge&labelColor=E5E7EB&color=0078D4)](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Edge AI for Beginners](https://img.shields.io/badge/Edge%20AI%20for%20Beginners-00B8E4?style=for-the-badge&labelColor=E5E7EB&color=00B8E4)](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![MCP for Beginners](https://img.shields.io/badge/MCP%20for%20Beginners-009688?style=for-the-badge&labelColor=E5E7EB&color=009688)](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
[![AI Agents for Beginners](https://img.shields.io/badge/AI%20Agents%20for%20Beginners-00C49A?style=for-the-badge&labelColor=E5E7EB&color=00C49A)](https://github.com/microsoft/ai-agents-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### 生成式 AI 系列
[![生成式 AI 入門](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![生成式 AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
[![Generative AI for Beginners](https://img.shields.io/badge/Generative%20AI%20for%20Beginners-8B5CF6?style=for-the-badge&labelColor=E5E7EB&color=8B5CF6)](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[![Generative AI (.NET)](https://img.shields.io/badge/Generative%20AI%20(.NET)-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[![Generative AI (Java)](https://img.shields.io/badge/Generative%20AI%20(Java)-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
[![Generative AI (JavaScript)](https://img.shields.io/badge/Generative%20AI%20(JavaScript)-E879F9?style=for-the-badge&labelColor=E5E7EB&color=E879F9)](https://github.com/microsoft/generative-ai-with-javascript?WT.mc_id=academic-105485-koreyst)
---
### 核心學習
[![機器學習入門](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![資料科學入門](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![人工智慧入門](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![資安入門](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![網頁開發入門](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![物聯網入門](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![擴增實境開發入門](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
[![ML for Beginners](https://img.shields.io/badge/ML%20for%20Beginners-22C55E?style=for-the-badge&labelColor=E5E7EB&color=22C55E)](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[![Data Science for Beginners](https://img.shields.io/badge/Data%20Science%20for%20Beginners-84CC16?style=for-the-badge&labelColor=E5E7EB&color=84CC16)](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[![AI for Beginners](https://img.shields.io/badge/AI%20for%20Beginners-A3E635?style=for-the-badge&labelColor=E5E7EB&color=A3E635)](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[![Cybersecurity for Beginners](https://img.shields.io/badge/Cybersecurity%20for%20Beginners-F97316?style=for-the-badge&labelColor=E5E7EB&color=F97316)](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[![Web Dev for Beginners](https://img.shields.io/badge/Web%20Dev%20for%20Beginners-EC4899?style=for-the-badge&labelColor=E5E7EB&color=EC4899)](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[![IoT for Beginners](https://img.shields.io/badge/IoT%20for%20Beginners-14B8A6?style=for-the-badge&labelColor=E5E7EB&color=14B8A6)](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[![XR Development for Beginners](https://img.shields.io/badge/XR%20Development%20for%20Beginners-38BDF8?style=for-the-badge&labelColor=E5E7EB&color=38BDF8)](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### 智能助理系列
[![AI 配對程式設計的智能助理](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![C#/.NET 的智能助理](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![智能助理冒險](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
### Copilot 系列
[![Copilot for AI Paired Programming](https://img.shields.io/badge/Copilot%20for%20AI%20Paired%20Programming-FACC15?style=for-the-badge&labelColor=E5E7EB&color=FACC15)](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[![Copilot for C#/.NET](https://img.shields.io/badge/Copilot%20for%20C%23/.NET-FBBF24?style=for-the-badge&labelColor=E5E7EB&color=FBBF24)](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[![Copilot Adventure](https://img.shields.io/badge/Copilot%20Adventure-FDE68A?style=for-the-badge&labelColor=E5E7EB&color=FDE68A)](https://github.com/microsoft/CopilotAdventures?WT.mc_id=academic-105485-koreyst)
<!-- CO-OP TRANSLATOR OTHER COURSES END -->
## 尋求協助
**遇到問題嗎?** 請參考我們的[疑難排解指南](TROUBLESHOOTING.md)以解決常見問題
**遇到問題嗎?** 請查看我們的[故障排除指南](TROUBLESHOOTING.md),尋找常見問題的解決方案
如果您卡住了或對建立 AI 應用有任何疑問,歡迎加入學習者與經驗豐富的開發者社群,一同討論 MCP。這是一個能自由提問並共享知識的支持性社群
如果您在建立 AI 應用程式時遇到困難或有任何疑問,歡迎加入學習者與經驗豐富的開發者一起討論 MCP。這是一個支持您的社群歡迎提問並自由分享知識
[![Microsoft Foundry Discord](https://dcbadge.limes.pink/api/server/nTYy5BXMWG)](https://discord.gg/nTYy5BXMWG)
如果您在開發過程中有產品反饋或錯誤回報,請造訪:
如果您在開發過程中有產品回饋或發現錯誤,請造訪:
[![Microsoft Foundry 開發者論壇](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
[![Microsoft Foundry Developer Forum](https://img.shields.io/badge/GitHub-Microsoft_Foundry_Developer_Forum-blue?style=for-the-badge&logo=github&color=000000&logoColor=fff)](https://aka.ms/foundry/forum)
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免責聲明**
本文件係使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於確保翻譯的準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的原文版本應被視為權威來源。對於關鍵資訊,建議尋求專業人工翻譯。我們不對因使用本翻譯所引起的任何誤解或誤譯負責
本文件係使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們努力追求準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於重要資訊,建議採用專業人工翻譯。我們不對因使用本翻譯而引起的任何誤解或誤釋承擔責任
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -4,7 +4,7 @@
Nitya Narasimhan藝術家
![路線圖手繪筆記](../../../translated_images/zh-TW/00-Roadmap.4905d6567dff47532b9bfb8e0b8980fc6b0b1292eebb24181c1a9753b33bc0f5.png)
![路線圖手繪筆記](../../../translated_images/zh-TW/00-Roadmap.4905d6567dff4753.webp)
**免責聲明**
本文件使用 AI 翻譯服務 [Co-op Translator](https://github.com/Azure/co-op-translator) 進行翻譯。雖然我們致力於提供準確的翻譯,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵資訊,建議使用專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或錯誤解釋不承擔責任。
Loading…
Cancel
Save