就在上一篇,夢想橡皮擦這位博主通過艱苦的努力程序員
終於能建立一個dataframe了bash
開開心心,打開本 高高興興,合上本函數
學習,多麼快樂的事情 不過就是找本書,而後把裏面本身認識的單詞 都標註上學習
在那一刻,學會了 或者僞裝學會了spa
其實過兩天,發現本身啥都忘了3d
是否是,嘿嘿code
今天,那必然是盯着屬性學習
啊cdn
其實吧blog
dataframe特別容易理解索引
就是一個一個的series排排好 你們一塊兒用索引
嗎!
你好好想一想
想明白了
那對於dataframe就達到一個很高的境界了
剩下的都不是事
走過路過
這些屬性要背過
第一個獲取索引
看,上來就是這麼簡單的
你就這麼一猜(說的好像真能猜出來同樣@_@)
就知道是index
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.index)
>>> Index(['class1', 'class2', 'class3'], dtype='object')
複製代碼
接下來咱在獲取一個columns和values吧
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.index)
print(df.columns)
print(df.values)
複製代碼
結果那麼微微一秀
Index(['class1', 'class2', 'class3'], dtype='object')
Index(['boys', 'girls'], dtype='object')
[[1 5]
[2 6]
[3 7]]
複製代碼
毫無瑕疵,都猜對了
爲何能猜對, 由於咱們這幾天認真學習了
爲何認真學習 由於大佬博客寫(bu)的(yao)好(lian)
還有2個屬性特別經常使用
一個叫作size一個叫作shape
都是看dataframe結構的
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.size)
print(df.shape)
複製代碼
size獲得的結果是6,表示總共有6個數據才dataframe裏面 shape獲得的結果是 (3, 2) 表示dataframe是一個3行2列的矩陣
看,就這麼厲害,數學概念順口就來
矩陣... ...
打開官網一看,咦,還有好多屬性呢
你看,外面太陽正當頭,正是學習的好時候啊
咱順手就學幾個簡單的函數
第一個 head()
tail()
多麼熟悉的畫風
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.head(1))
print(df.tail(2))
複製代碼
試試吧,head獲取頭部,tai獲取尾部,跟series同樣的
到這時候,你是否是應該腦中一抖
是否是會出現loc
,iloc
這兩個函數
若是閃過,那麼恭喜你,你已經學會融會貫通了
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.loc['class1'])
print(df.iloc[1])
複製代碼
秀一波結果
boys 1
girls 5
Name: class1, dtype: int64
boys 2
girls 6
Name: class2, dtype: int64
複製代碼
接下來開始弄點不一樣的
老是和series同樣
那就不須要弄個dataframe出來了
df = pd.DataFrame([[1,5],[2,6],[3,7]],columns=['boys','girls'],index=['class1','class2','class3'])
print(df.items())
print(df.keys())
print(df.iteritems())
print(df.iterrows())
print(df.itertuples())
複製代碼
學習前,那必然是先看運行結果
<generator object DataFrame.iteritems at 0x000001E37ED4EC50>
Index(['boys', 'girls'], dtype='object')
<generator object DataFrame.iteritems at 0x000001E37ED4EC50>
<generator object DataFrame.iterrows at 0x000001E37ED4EC50>
<map object at 0x000001E30C371400>
複製代碼
5個函數對應5個結果
注意到1和3好像同樣唉~ 不用猜了,他們兩個就是同樣的 都是返回 Iterator over (column name, Series) pairs.
咦,這句英文啥意思?
大白話,就是返回一個 元組迭代器
看看結果
第二個函數keys
返回的就是索引啦
第四個函數iterrows
返回的行,跟 iteritems 是對應的
第五個函數itertuples
把每行都當成一個元組返回
看一下吧
for item in df.itertuples():
print(item)
print(item[1])
複製代碼
結果爲
Pandas(Index='class1', boys=1, girls=5)
1
Pandas(Index='class2', boys=2, girls=6)
2
Pandas(Index='class3', boys=3, girls=7)
3
複製代碼
恩,這5個函數仍是有點意思的
使用的時候,必定要想好了在用
畢竟,一不留神,就用錯了
好,簡單的函數終於嘚啵完了
你呢,能夠邊看邊練, 也能夠只看不練
更能夠不看只給我評論
對吧
老是那麼的激動,總想一天本身的粉絲過萬,成爲稱霸一方的大佬
你能夠點擊收藏,而後在電腦上,打開,掏出手機,而後一掃,就關注了 你能夠截圖保存,而後用手機一掃,關注了 你能夠分享連接到weixiin 打開,長按,而後關注了
看,給你那麼多的技巧,咋就關注不上了呢!