開篇先嘚啵 昨天寫到哪了? 睡醒就忘了... ... 不過聰明伶俐的博主,僅用1秒鐘就想起來了 我們昨天學了一個pandas的類型series 並且會創建了,厲不厲害 對於一個新的數據結構來說 額,不對,對於python任意的數據結構來說 或者換句話,對於任何對象來說 看我,就沒有對象... ... ...
開篇先嘚啵
昨天寫到哪了?
睡醒就忘了... ...
不過聰明伶俐的博主,僅用1秒鐘就想起來了
我們昨天學了一個pandas的類型series
並且會創建了,厲不厲害
對於一個新的數據結構來說
額,不對,對於python任意的數據結構來說
或者換句話,對於任何對象來說
看我,就沒有對象... ...
都有兩個內容
一個叫屬性,一個叫方法
對象的屬性
就是,你長成啥樣
你俊俏的鼻子,
帥氣的耳朵,
放光的眼睛
綠綠的頭髮
對象的方法
就是,你能幹啥
你能隨風奔跑
你能跳過泥坑
你能用手指打98K
你還能跳C哩C
明白了,上面的內容,就好了
什麼,不明白
那麼,記住對象. 出來
的不帶括弧,叫屬性
帶括弧,叫方法
... ...
series的屬性
這種問題,一般簡單的很
你只要能找到官網
啥都OK
什麼,找不到官網?
百度 python pandas
不就行了?
打開之後,咦~!! 這麼多
看到沒,都是series.xxx
後面沒有括弧吧,那就是屬性嘍
常規學習套路,老師會告訴你,這些不用都記住
記住幾個常用的就行
恩,很有道理,其實就是嫌棄我的腦容量不夠
不過,幾個其實我也記不住
機智的我只能靠才華吃飯了
一眼就就看到了幾個認識的
我們剛學會聲明一個series啊
my_series = pd.Series(data = ['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
註意看,裡面有幾個關鍵的單詞
data
,name
,index
編寫代碼測試一下
import pandas as pd
my_series = pd.Series(data = ['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
print(my_series.index) # 獲取索引,返回一個列表
print(my_series.name) # 獲取series的名字
print(my_series.data) # 獲取數據,返回一個列表
運行之後,還不錯,2個對了,不過除了1條警告
大概意思是,看我英語水平
series.data 以後要被移除... ...
哦,也就是不要用了
nice啊,少記一個屬性唉~~
繼續!
試一下下麵的代碼吧
print(my_series.values)
print(my_series.shape)
print(my_series.size)
可以整理一下了
常見的一些屬性,我們已經整理完畢了
就用這幾個吧,
老師說了,多了,咱也記不住
其它的後面做案例,咱在後頭看
series的方法
下麵搗鼓搗鼓series的一系列方法
最常用也是最基本的,就是獲取元素了,
series是一維的
可以用索引獲取,昨天的課程中,咱已經嘗試過了
那麼方法的寫法呢?
my_series = pd.Series(data = ['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
print(my_series.loc['a'])
print(my_series.iloc[0])
註意這兩個的區別,
它們都可以獲取到我
但是一個寫作loc,一個寫作iloc
記住,一個是通過整數索引去獲取,一個是通過標簽索引去獲取
還有,不是小括弧哦~中括弧
iloc 是 英文 integer-location
索引,一定要區分好
當看到中括弧的時候,你就應該考慮切片了
my_series = pd.Series(data = ['我','是','夢想','橡皮擦'],index=['a','b','c','d'],name='夢想序列')
print(my_series.iloc[0:2])
print(my_series.loc['a':'c'])
切片也有區別哦,
loc切的是標簽索引,並且包含末尾元素
iloc切的是整數索引,不包含末尾元素
一定要體會用法
當然還有很多其他叫座的用法
如果你學有餘力
打開官網,嘗試一下吧
http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.iloc.html
http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.loc.html
series的方法,太多太多了
http://pandas.pydata.org/pandas-docs/stable/reference/series.html
看看吧,慢慢學,
應用層面的這些,我給你搗鼓搗鼓
下麵在看一個函數
.to_list()
基本上,看其名,知其意了
只不過,官網寫差了,竟然給官網找毛病?
這個函數實際寫的時候,沒有中間的小短線
print(my_series.tolist())
.items()
print(list(my_series.items()))
返回一個索引和值的元素zip,使用list可以列印出來
[('a', '我'), ('b', '是'), ('c', '夢想'), ('d', '橡皮擦')]
.keys()
看到名字,就猜意思,這個鑰匙是幹啥的?估計跟索引有關係
沒錯,返回可迭代的index
print(my_series.keys())
>>> Index(['a', 'b', 'c', 'd'], dtype='object')
很多,在寫下去,估計就寫不完了
分一下類吧
series全部類型的方法
必會簡單的
- 構造函數
- 常用屬性
方法類型
- 轉換類的方法 -- 將 series轉換為其他類型
- 索引,迭代器類方法 -- 操作索引,獲取各種迭代器
- 二元操作函數 -- 操作兩個series函數
- 應用函數,分組函數 -- apply,map,groupby 都是常用的
- 計算函數 -- 求和,最大值,最小值都在這裡呢
- 重置索引,選擇部分,標簽操作函數
- 刪除數據函數
- 排序函數
- 合併函數
- 時間序列函數
- 字元串處理
- 作圖函數
- IO與序列化函數
好多啊,如果慢慢學,只能去肝了
索引,文檔手冊怎麼查詢
英文閱讀能力,你都需要提高了哦
最後,歡迎關註一個嘮叨的編程工程師的公號,非本科程式員
掏出你的手機,拍這個