數據分析學習第2關:Python環境配置和基礎學習
一.安裝數據分析環境Anaconda和Jupyter notebook
1.Anaconda是包管理器和環境管理器
1)Anaconda 附帶了一大批常用數據科學包,它附帶了 conda、Python 和 150 多個科學包及其依賴項。因此你可以立即開始處理數據。
2)管理包
Anaconda 是在 conda(一個包管理器和環境管理器)上發展出來的。
在數據分析中,你會用到很多第三方的包,而conda(包管理器)可以很好的幫助你在計算機上安裝和管理這些包,包括安裝、卸載和更新包。
3)管理環境
為什麼需要管理環境呢?
比如你在A項目中用了 Python 2,而新的項目B老大要求使用Python 3,而同時安裝兩個Python版本可能會造成許多混亂和錯誤。這時候 conda就可以幫助你為不同的項目建立不同的運行環境。
還有很多項目使用的包版本不同,比如不同的pandas版本,不可能同時安裝兩個 Numpy 版本,你要做的應該是,為每個 Numpy 版本創建一個環境,然後項目的對應環境中工作。這時候conda就可以幫你做到。
2.Jupyter notebook 可以將數據分析的代碼、圖像和文檔全部組合到一個web文檔中。
3.使用Anaconda、Jupyter notebook常用命令、重要包和文件
conda upgrade --all 更新所有包
conda install package_name 安裝包
conda install package_name1 package_name2同時安裝多個包
conda install numpy=1.10 指定所需的包版本
conda remove package_names 卸載包
conda update package_name 更新包
conda update --all 更新環境中的所有包
conda list 列出已安裝的包
conda search search_term 搜索包,支持模糊,正則表達式查找
conda create -n env_name package_names env_name 是設置環境的名稱(-n 是指該命令後面的env_name是你要創建環境的名稱),package_names 是你要安裝在創建環境中的包名稱。
例如,要創建環境名稱為 py3 的環境並在其中安裝 numpy,在終端中輸入 conda create -n py3 pandas。
conda create -n py3 python=3 創建環境名稱為py3,並安裝最新版本的Python3
activate my_env 進入環境、
deactivate 離開環境
conda env export > environment.yaml 將你當前的環境保存到文件中包保存為YAML文件
conda env list 列出環境
conda env remove -n env_name 刪除環境
jupyter notebook --generate-config 查看notebook配置文件
conda install jupyter notebook安裝jupyter notebook
conda install pyreadline 在Anaconda終端安裝代碼自動補全包
conda install nb_conda用於notebook自動關聯nb_conda的環境
二.Python基礎知識
1.如何安裝Python
如何安裝使用Anaconda
https://www.zhihu.com/question/58033789/answer/254673663?utm_source=wechat_session&utm_medium=social
如何安裝使用Jupyter notebook
https://www.zhihu.com/question/46309360/answer/254638807
2.直接學習Python3.
Python3是不兼容Python2的。
大量的庫是直接支持Python3的,所以直接學習Python3
3-6快速學習Python的4個關鍵點
數據,函數,條件判斷,循環
1)變數
Python 中的變數賦值不需要類型聲明。
大小寫敏感,數字不能作為變數首字母
2)注釋
注釋
注釋方法1:#
注釋方法2:
3)數據
字元串%s,單引號雙引號,+
數字:整型,浮點型
容器:存放多個數據
字元串、數字、元祖是不可變數據類型
其他的為可變數據類型
a)列表(List)
#定義列表
nameList=[猴子,馬雲,王健林,馬化騰]
#列表長度
len(nameList)
#增加操作
nameList.append(劉強東)
#刪除操作
del nameList[1]
#查詢操作
nameList[0]
#修改操作
nameList[0]=孫悟空
b)元祖(Tuple):元素不能修改
#定義元祖
gafataTuple=(騰訊,阿里巴巴,蘋果,谷歌,Facebook,亞馬遜)
#元祖長度
len(gafataTuple)
#查詢操作
gafataTuple[0]
c)集合(Sets):沒有重複元素的容器,自動刪除重複的元素
#定義集合,會自動刪除一個亞馬遜
gafataSets={騰訊,阿里巴巴,蘋果,谷歌,Facebook,亞馬遜,亞馬遜}
#定義空集合
stockSets=set()
#增加操作
stockSets.update([騰訊,阿里巴巴,京東])
#刪除操作
stockSets.discard(京東)
#查找操作
txBool = 騰訊 in stockSets
d)字典(Dictionary):存儲映射關係數據的容器,key要唯一,value是不可變(數值,字元串,元祖)
#定義字典
patienDic1={001:猴子,002:馬雲}
patienDic2={001:[猴子,29,糖尿病,較差],002:[馬雲,29,糖尿病,好轉]}
#增加操作
patienDic2[003]=[馬化騰,35,糖尿病,好轉]
#刪除操作
del patienDic2[002]
#查詢操作
patienDic2[『001』]
#修改操作
patienDic2[『001』]=[猴子,29,糖尿病,較差]
e)布爾:True,False
f)None:空值
4)條件判斷
#例子
age=int(input(請輸入你家狗狗的年齡:))
if age < 0 :
print(狗狗年齡不能小於0)
elesif age==1 :
print(相當於14歲的人)
elesif age==2 :
print(相當於2歲的人)
else :
human=22+(age-2)*5
print(對於人類年齡:,human)
5)循環
#例子
eatList[吃第1次飯,吃第2次飯,吃第3次飯]
for i in eatList:
print eatList(i)
#使用函數
a=1
b=1
c=add(a,b)
continue用於跳出當前循環
break用於退出整個循環
6)函數
#定義函數
def add(x,y):
z=x+y
return z
注意參數是否可更改
如果函數參數是字元串, 元祖, 和數字這3種不可更改的對象,參數傳遞時,相當於傳遞的是複製出來的數據,對於數據本身沒有影響
如果參數傳入的數據類型是可變的類型,當函數內部修改該數據時,原始的數據也改變了。
變數的作用域
定義在函數裡面變數為局部變數,用於局部作用域,只能在函數裡面使用。
定義在函數外面變數為全部變數,用於全局作用域,能在整個程序中使用。
7)模塊
Python內置模塊
#引入模塊
import sys
#使用模塊中的函數、屬性
pathList=sys.path
使用第三方包
先進入conda環境安裝第三方包,然後在程序中引入模塊使用
import 包名稱
import 包名稱 as 別名
import 包名稱 import 函數名
8)數據結構
集合collections:
雙向鏈表queue:隊列,棧
排序字典:OrderedDict
計數器Counter
1)隊列:先進先出
#定義隊列
queue=deque([001,002,003,004,005])
#入隊,在隊列尾部插入元素
queue.append(006)
#出隊,在隊列頭部刪除元素
queue.popleft()
2)棧:在棧頂入棧出棧
#定義棧
stack=deque([知乎動態,知乎回答,知乎文章])
#入棧,在棧頂加入元素
stack.appendleft(知乎專欄)
#出棧,刪除棧頂元素
stack.pop()
3)排序字典
4)計數器
推薦閱讀:
※當我們從事數據崗位時我們需要會什麼
※基於Numpy、Pandas分析包對某藥店銷售數據分析
※就是它了-結合自己興趣與事業發展的新方向
※IMDB Movie :Python數據分析報告
※2017年3D列印行業大數據報告,3D列印品牌數據分析
TAG:數據分析 |