圖源:Pexels Anaconda是一個供數據科學家、IT專家,和商業領袖使用的數據科學平臺,是Python、R語言等的一個發行版。針對數據科學,它有超過300個軟件包,因此它迅速攀升為最好的數據平臺之一。本篇導修將會探討如何運用Anaconda幫助Python編程。以下是本文要探討的主題:
○ Python基礎 ○ 數據分析 ○ 機器學習和人工智能 *CDH:Cloudera’s Distribution Including Apache Hadoop. Cloudera包括Apache Hadoop的發行版本。 Anaconda介紹 Anaconda是Python和R的開源發行版本。它能夠用于數據科學,機器學習,深度學習等領域。它能夠讓用戶接觸到超過300個數據庫,因此對于任何程序員而言,Anaconda都是數據科學研究的上選。 Anaconda能夠幫助簡化軟件包的管理和部署,它還匹配了多種工具,可以使用各種機器學習和人工智能算法輕松地從不同的來源收集數據。Anaconda還可以使用戶獲得一個易于管理的環境設置——用戶只需點擊按鈕就可以部署任何項目。 相信你們對Anaconda已經有了一個基本概念,接下來了解如何安裝它,并設置一個能夠在系統上工作的環境。 安裝和啟動 想要安裝Anaconda,可以進入這個網站。 下載頁面 選擇一個適合的版本然后點擊下載。完成下載后,打開啟動頁面。 Anaconda啟動 遵循啟動頁中的指令,記得點擊添加Anaconda到路徑環境變量里。安裝完成后,你會看到一個和下圖一樣的窗口: 安裝完成 安裝完成后,打開Anaconda prompt并輸入jupyternotebook*。 *Jupyter Notebook: 是一個基于Web的交互式計算環境,用于創建jupyter notebook文檔。 Anaconda prompt 你會看到一個和下圖一樣的窗口: Jupyter Notebook文件查找器 現在,已經知道如何將anaconda應用到python里了,繼續研究如何在anaconda里為不同的項目導入數據庫。 導入Python庫至Anaconda 打開Anaconda prompt,檢查數據庫是否已經安裝。 檢查NumPy*是否安裝 *NumPy是Python語言的一個擴展程序庫,支持高端大量的維度數組與矩陣運算,此外也針對數組運算提供大量的數學函數庫。 因為沒有名為numpy的模塊存在,我們要運行以下指令來安裝numpy。 安裝NumPy中 安裝完成,就會出現這樣一個窗口: NumPy安裝完成 安裝完一個數據庫后,盡量再次導入模塊以驗證安裝是否成功。 導入NumPy 如上圖所示,這一步沒有出現錯誤。這就是在Anaconda中安裝不同數據庫的方法。 Anaconda Navigator Anaconda Navigator Anaconda Navigator是Anaconda發行版附帶的桌面圖形用戶界面(GUI),它能夠讓用戶在不使用命令行的情況下啟動應用程序,并管理conda軟件包和環境。 Python基礎 變量和數據類型 變量和數據類型是所有編程語言的基本組成部分。基于不同數據的屬性,Python共有六種數據類型。其中,列表(list),字典(dictionary),集合(set),還有元組(tuple)是Python中的集合數據類型。 下面是變量和數據類型在Python中應用的例子: #variable declaration name = 'Edureka' f = 1991 print('python wasfounded in' , f) #data types a = [1,2,3,4,5,6,7] b = {1 : 'edureka' , 2: 'python'} c = (1,2,3,4,5) d = {1,2,3,4,5} print('the listis' , a) print('thedictionary is' ,b) print('the tupleis' , c) print('the set is' , d) 操作符(Operators) Python 中的操作符用于值或變量之間的操作。Python中有七種類型的操作符:
下面是在Python中使用操作符的一個例子: a = 10 b = 15 #arithmetic operator print(a + b) print(a - b) print(a * b) #assignment operator a += 10 print(a) #comparison operator #a != 10 #b == a #logical operator a > b and a > 10 #this will return true if both the statements are true. 控制語句 諸如使用if, else, break和continue等的語句被用作控制語句,以獲得對執行過程的控制,從而取得最佳結果。可以在 Python 的循環中使用這些語句來控制結果。下面的示例演示如何使用控制(control)條件(conditional)語句。 name = 'edureka' for i in name: if i == 'a': break else: print(i) 函數 Python函數以一種高效的方式使代碼的重復使用性提高,為問題語句編寫邏輯,并運行一些參數以獲得最佳解決方案。下面是如何在python中使用函數的示例。 deffunc(a): return a ** a res = func(10) print(res) 類以及對象 因為Python支持面向對象的程序設計,所以也可以使用類和對象。下面是如何使用python中的類和對象的示例。 classParent: deffunc(self): print('this is parent') classChild(Parent): deffunc1(self): print('this is child') ob = new Child() ob.func() 以上Python的一些基本概念。接下來,看看Anaconda更大的軟件包支持,我們可以從許多庫中獲得資料。現在來探究如何使用 python anaconda進行數據分析。 分析 數據挖掘和分析工作流 上面是數據分析中涉及的某些步驟。來看看在anaconda中數據分析是如何進行數據分析的,以及其中可以使用的各種庫。 收集數據 數據的收集就像在程序中加載 CSV 文件一樣簡單。可以利用相關數據來分析數據中的特定實例或條目。下面是加載程序中CSV數據的代碼: import pandas as pd import numpy as np import matplotlib.pyplot as plt import seaborn as sns df = pd.read_csv('filename.csv') print(df.head(5)) 前五行數據組 交叉分析 在加載程序中的數據集之后,還需要對數據進行一些更改過濾,即消除空值和可能造成分析不確定性的不必要字段。 下面是如何根據需求篩選數據的示例: print(df.isnull().sum()) #this will give the sum of all the null values in thedataset. df1 = df.dropna(axis=0 , how= 'any') #this will drop rows with null values 找到每列空值的總數 當然也可以刪除空值。 刪除空值的所在行 箱線圖(box plot) sns.boxplot(x=df['Salary Range From']) sns.boxplot(x=df['Salary Range To']) 薪資范圍箱線圖 薪資范圍箱線圖 散點圖(scatter plot) import matplotlib.pyplot as plt fig, ax = plt.subplots(figsize=(16,8)) ax.scatter(df['Salary Range From'] , df['Salary Range To']) ax.set_xlabel('Salary Range From') ax.set_ylabel('Salary Range TO') plt.show() 薪資范圍散點圖 可視化 一旦根據需求改變了數據,就有必要分析這些數據,方式之一就是將結果可視化。更好的可視化表示有助于對數據投影進行最優分析。 下面是一個數據可視化的例子: 全職&兼職工作者的柱狀圖 全職&兼職工作者及工資結算方式柱狀圖 薪資范圍直方圖 薪資范圍直方圖 import matplotlib.pyplot as plt fig = plt.figure(figsize = (10,10)) ax = fig.gca() sns.heatmap(df1.corr(), annot=True, fmt='.2f') plt.title('Correlation',fontsize=5) plt.show() 用matplotlib繪制的熱圖 分析 完成可視化后,可以借助各種圖表來進行分析。假設我們正在處理作業數據,通過查看某個區域中特定作業的可視化表示,便可以確定特定域中作業的數量。 根據上文的分析,可以假設下列結果:
如果還有其他問題,在評論區里踴躍發言喲,小芯將第一時間與你聯系。 |
|