一、Pandas簡介
Pandas是Python社區中廣泛使用的數據分析庫。它提供了大量的工具,例如快速加載數據,處理缺失值,數據轉換和清洗等。Pandas主要用於數據的清理、準備和分析。Pandas的數據結構很多,其中Series和DataFrame是最重要的兩個結構。Series用於處理一維數組,而DataFrame用於處理二維數據表。
二、文字闡述
在數據分析中,篩選特定數據非常常見。在實際的數據中,數據的格式可能比較混亂,很難一次性地篩選出所需要的數據。在Pandas中,可以很方便地使用字符串方法來篩選數據。本文將介紹如何使用Pandas字符串方法根據指定的字符串或字符來篩選數據。
三、字符串以指定字符或字符串開頭篩選數據
在Pandas中,使用字符串方法中的startswith(以指定字符串開頭)、endswith(以指定字符串結尾)和contains(包含指定字符串)來篩選數據。
import pandas as pd # 創建示例數據 df = pd.DataFrame({'Name': ['Tom', 'Jerry', 'Tommy', 'Jenny', 'Jack'], 'Age': [30, 25, 20, 35, 40], 'Gender': ['Male', 'Male', 'Male', 'Female', 'Male']}) # 篩選Name列以J開頭的數據 df_J = df[df['Name'].str.startswith('J')] print(df_J)
運行結果:
Name Age Gender 1 Jerry 25 Male 3 Jenny 35 Female 4 Jack 40 Male
在上面的示例中,通過調用startswith方法篩選出Name列以J開頭的數據。返回的是包含篩選結果的DataFrame對象。
四、字符串以指定字符串開頭篩選數據
startswith方法也可以接受一個元組類型作為參數,以篩選以元組中任意一個字符串作為開頭的數據。
# 篩選Name列以Tom或J開頭的數據 df_TJ = df[df['Name'].str.startswith(('Tom', 'J'))] print(df_TJ)
運行結果:
Name Age Gender 0 Tom 30 Male 1 Jerry 25 Male 2 Tommy 20 Male 3 Jenny 35 Female 4 Jack 40 Male
在上面的示例中,元組中包含了兩個字符串”Tom”和”J”,通過調用startswith方法,篩選出Name列以Tom或J開頭的數據。
五、字符串以指定字符結尾篩選數據
endswith方法跟startswith方法類似,可以篩選以指定字符結尾的數據。
# 篩選Name列以y結尾的數據 df_y = df[df['Name'].str.endswith('y')] print(df_y)
運行結果:
Name Age Gender 0 Tom 30 Male 2 Tommy 20 Male 3 Jenny 35 Female
在上面的示例中,通過調用endswith方法,篩選出Name列以y結尾的數據。
六、字符串包含指定字符篩選數據
contains方法可以篩選包含指定字符串的數據。
# 篩選Name列包含om字符串的數據 df_om = df[df['Name'].str.contains('om')] print(df_om)
運行結果:
Name Age Gender 0 Tom 30 Male 2 Tommy 20 Male
在上面的示例中,通過調用contains方法,篩選出Name列包含om字符串的數據。
七、結語
使用字符串方法來篩選數據是很方便的。在Pandas中,字符串方法提供了許多函數,例如startswith、endswith、contains和replace等,可以快速地處理數據。希望這篇文章可以幫助您更好地使用Pandas來進行數據篩選。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/285434.html