在數據分析和處理中,我們經常會使用Pandas庫中的DataFrame來進行數據處理和操作。而對於DataFrame的遍歷方法,則是我們必備的基礎知識之一。在本文中,我們將詳細介紹Python中使用DataFrame遍歷的方法和技巧。
一、簡介
在Python的Pandas庫中,我們使用DataFrame來表達二維表格數據(也可以看作是Series的字典)。對於二維表格數據,我們需要遍歷其中的行或列,以便進行對每一行或每一列的數據處理。在這裡,我們主要介紹DataFrame的遍歷方法。
二、按行遍歷
按行遍歷是遍歷DataFrame最常用的方法。我們可以通過iterrows()函數遍歷DataFrame中的每一行,返回的是(index,Series)對。以下是代碼示例:
import pandas as pd df = pd.DataFrame({'name':['Tom', 'Jerry', 'Grace'], 'age':[21, 19, 23]}) for index, row in df.iterrows(): print(index, row['name'], row['age'])
執行結果:
0 Tom 21 1 Jerry 19 2 Grace 23
除此之外,我們還可以使用apply()函數進行行遍歷。該方法會將DataFrame中的每一行轉換為Series,然後對該Series進行操作,最後返回處理後的結果。以下是代碼示例:
import pandas as pd def func(row): row['age'] += 2 return row df = pd.DataFrame({'name':['Tom', 'Jerry', 'Grace'], 'age':[21, 19, 23]}) df = df.apply(func, axis=1) print(df)
執行結果:
name age 0 Tom 23 1 Jerry 21 2 Grace 25
三、按列遍歷
按列遍歷是我們在處理數據時比較常用的方法,在Pandas庫中提供了多種方法支持按列遍歷DataFrame。以下是代碼示例:
方法一:使用iteritems()函數進行遍歷。該方法遍歷的是DataFrame的每一列數據,返回(列名,Series)對。代碼示例:
import pandas as pd df = pd.DataFrame({'name':['Tom', 'Jerry', 'Grace'], 'age':[21, 19, 23]}) for col_name, col_value in df.iteritems(): print(col_name) print(col_value)
執行結果:
name 0 Tom 1 Jerry 2 Grace Name: name, dtype: object age 0 21 1 19 2 23 Name: age, dtype: int64
方法二:使用iterrows()函數處理轉換成字典進行遍歷。代碼示例:
import pandas as pd df = pd.DataFrame({'name':['Tom', 'Jerry', 'Grace'], 'age':[21, 19, 23]}) dic = df.to_dict() for col_name in dic: print(col_name) for index in dic[col_name]: print(dic[col_name][index])
執行結果:
name Tom Jerry Grace age 21 19 23
方法三:使用apply()函數進行處理。該方法會將DataFrame中的每一列轉換為Series,然後對該Series進行操作,最後返回處理後的結果。代碼示例:
import pandas as pd def func(col): col = col.apply(lambda x: x*2) return col df = pd.DataFrame({'name':['Tom', 'Jerry', 'Grace'], 'age':[21, 19, 23]}) df = df.apply(func, axis=0) print(df)
執行結果:
name age 0 TomTom 42 1 JerryJerry 38 2 GraceGrace 46
四、總結
本文詳細介紹了Python中使用DataFrame遍歷的方法和技巧。包括按行遍歷、按列遍歷等多個方法。希望本文能對大家理解和使用DataFrame有所幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/240597.html