寫這個系列背後的故事
咦,面試系列的把基礎部分都寫完啦,哈哈答,接下來要弄啥嘞~
pandas吧
外國人開發的
翻譯成漢語叫 熊貓
厲害厲害,很接地氣
一個基於numpy的庫
幹啥的?
做資料分析用的
而資料分析是python體系下一個非常龐大的分支
厲害到,好多人一看就會(博主就不是)
博主將用不知道多少篇部落格把她給你搗鼓明白(說白了,就是沒寫大綱!)
當然也可能讓你失去對她的興趣
畢竟,博主叫夢想橡皮擦啊
擦掉你程式設計的夢想也是我努力的一部分
下載按照這個庫
這個庫,安裝easy
你只要這樣,這樣,然後在這樣,中間出現問題,百度一下,這樣,這樣,就好了... ...
嘿嘿
我其實用的是python3.6版本
然後通過下面的命令安裝的
pip install pandas
國內,一般安裝比較慢,你新增一個清華大學的源就好了
pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple/
下載&安裝速度就嗷嗷的了
pandas版本為
pandas 0.23.3
你的版本比我應該高,
畢竟我是老程式設計師了
pandas官網 http://pandas.pydata.org/
沒有翻譯完的偽中文網 https://www.pypandas.cn/index.html
安裝之後
一番簡單的操作之後,如果過程中你沒有出現任何BUG
恭喜你,安裝成功
下面開啟你的任意開發工具
一般我用“被免費版”的pycharm
建立一個檔案,然後輸入下面的程式碼,直接run
import pandas
沒有報錯,完美,一個庫學會了
當然,一般寫成
import pandas as pd
你就和國際程式設計師接軌了
pandas主要幹啥
如果你英文好,直接開啟官方文件
瞅就可以了
如果英語不好,沒關係
你這麼理解,pandas就像用程式碼操作excel一樣,一樣一樣的
在pandas中,你要學習一個新的資料結構
Series
百度翻譯,恩,先記住發音吧 say 額 瑞 z
多麼棒的標註,中英結合。
這是一種什麼樣的資料結構呢?
在解釋這個問題前,我們先建立一個,然後在程式碼中看看
不就清晰明瞭了麼
編寫下面的程式碼
import pandas as pd
my_series = pd.Series(['我','是','夢想','橡皮擦'])
print(my_series)
執行結果
0 我
1 是
2 夢想
3 橡皮擦
dtype: object
好像也有看出來了啥?
彆著急,弄到excel裡面瞅瞅,直接複製就好
看到沒,我們通過列表建立了一個series
在excel中,你需要先確定你知道什麼是行,什麼是列
橫著的叫行,豎著的叫列
你通過列表建立series之後,每行的前面出現一個從0開始的序號
這個新出現的序列,記住,叫索引
,
既然叫做索引了,那麼我們就可以給索引設定值
如果你有程式設計經驗,那麼你知道,索引值對應的英文叫做index
every 程式語言索引基本都是設定index
那我們在重寫一下
import pandas as pd
my_series = pd.Series(['我','是','夢想','橡皮擦'],index=['a','b','c','d'])
print(my_series)
看一下結果 索引變了吧
a 我
b 是
c 夢想
d 橡皮擦
dtype: object
繼續往裡面挖,注意index和前面列表的長度一定要一致
什麼意思?
pd.Series(['我','是','夢想','橡皮擦'],index=['a','b','c','d','e'])
報錯
pd.Series(['我','是','夢想','橡皮擦'],index=['a','b','c'])
報錯
宣告一個series的函式中,還可以攜帶一個name引數
請檢視
import pandas as pd
my_series = pd.Series(['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
print(my_series)
結果瞅瞅
a 我
b 是
c 夢想
d 橡皮擦
Name: 夢想序列, dtype: object
接下來,可以把前面的列表引數也寫完整了
import pandas as pd
my_series = pd.Series(data = ['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
print(my_series)
總結一下
建立一個series是非常容易的,只需要採用
pd.Series(data=列表,index=列表,name=名稱就可以)
其他建立方式
用字典也是可以的
my_series1 = pd.Series({'a':'非本科程式設計師','b':'公號'})
print(my_series1)
Series裡面儲存不同型別也是可以的
my_series2 = pd.Series([1,1.2,True,'MyName'])
print(my_series2)
這個Series你把他當成只有一列的excel就好了
咦?有人問了,剛才列印的結果不是2列麼
沒關係,那個是索引,只是獲取值的一個序號罷了
不信,我們獲取一下
my_series2 = pd.Series([1,1.2,True,'MyName'])
print(my_series2[0])
列印出來了吧
在試試
import pandas as pd
my_series = pd.Series(data = ['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
my_series1 = pd.Series({'a':'非本科程式設計師','b':'公號'})
my_series2 = pd.Series([1,1.2,True,'MyName'])
print(my_series1['a']) # 通過索引 a 訪問到了“非本科程式設計師”
print(my_series[0]) # 通過索引 0 訪問到了“我“,通過my_series['a']依舊可以
這樣子,你是不是感覺series跟python中的列表有點相似了呢?
好像還有點字典的感覺
這就對了,下篇見吧
我們會對series繼續研究的~
最後,歡迎關注一個嘮叨的程式設計工程師的公號,非本科程式設計師
你懶得搜,就開啟這個連結吧
或者掏出你的手機,拍這個