您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“如何使用Lambda來修改Pandas數據框中的值”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何使用Lambda來修改Pandas數據框中的值”這篇文章吧。
假設我們有以下df數據框:
data = [[1,2,3], [4,5,6], [7,8,9]] df = pd.DataFrame(data, columns=[0,1,2]) IN[1]: print (df) OUT[1]: 0 1 2 0 1 2 3 1 4 5 6 2 7 8 9
現在由于某種原因,你需要在第0列的數字上添加01的值。一個常見的方法是定義一個函數來完成這個任務,然后用 apply 函數來修改一列的值。
def add_numbers(x): return f'{x}01' df[0] = df[0].apply(add_numbers) IN[1]: print (df) OUT[1]: 0 1 2 0 101 2 3 1 401 5 6 2 701 8 9
這并不復雜,但是在數據框中對每一個改變創建一個函數是不切實際的。這時lambda就派上了用場。
lambda函數類似于普通的Python函數,但它可以不使用名稱來定義,這使得它成為一個漂亮的單行代碼。之前使用的代碼可以用以下方式來減少。
df[0] = df[0].apply(lambda x:f'{x}01')
當你不知道是否可以訪問一個系列的屬性來修改數據時,Lambda變得非常有用。
例如,列0包含字母,我們想把它們大寫。
# 如果你知道.str的存在,你可以這樣做 df[0] = df[0].str.title() # 如果你不知道.str,你仍然可以用lambda大寫 df[0] = df[0].apply(lambda x: x.title())
以上是“如何使用Lambda來修改Pandas數據框中的值”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。