「戲精少女」的pandas學習之路,你該這麼學!No.5

戲精博主即將上線

就在上一篇,夢想橡皮擦這位博主通過艱苦的努力程序員

終於能建立一個dataframe了bash

開開心心,打開本 高高興興,合上本函數

學習,多麼快樂的事情 不過就是找本書,而後把裏面本身認識的單詞 都標註上學習

在那一刻,學會了 或者僞裝學會了spa

在這裏插入圖片描述

其實過兩天,發現本身啥都忘了3d

是否是,嘿嘿code

昨天咱們已經手撕了dataframe的建立與簡單獲取

今天,那必然是盯着屬性學習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 打開,長按,而後關注了

看,給你那麼多的技巧,咋就關注不上了呢!

相關文章
相關標籤/搜索