[英]filter dataframe in pandas by a date column
數據在以下鏈接中: http : //www.fdic.gov/bank/individual/failed/banklist.html
我只想要2017年關閉的銀行。我該如何在Pandas中這樣做?
failed_banks= pd.read_html('http://www.fdic.gov/bank/individual/failed/banklist.html')
failed_banks[0]
這些代碼行提取所需的結果后,我該怎么辦?
理想情況下,您將使用
# assuming pandas successfully parsed this column as datetime object
# and pandas version >= 0.16
failed_banks= pd.read_html('http://www.fdic.gov/bank/individual/failed/banklist.html')[0]
failed_banks = failed_banks[failed_banks['Closing Date'].dt.year == 2017]
但是熊貓不能正確地將“ Closing Date
解析為日期對象,因此我們需要自己解析:
failed_banks = pd.read_html('http://www.fdic.gov/bank/individual/failed/banklist.html')[0]
def parse_date_strings(date_str):
return int(date_str.split(', ')[-1]) == 2017
failed_banks = failed_banks[failed_banks['Closing Date'].apply(parse_date_strings)]
這樣的事情應該工作
提取關閉年份。
# using pd.to_datetime
closing_year = pd.to_datetime(failed_banks[0]['Updated Date']).apply(lambda x: x.year)
# or by splitting the line
closing_year = failed_banks[0]['Updated Date'].apply(lambda x: x.split(', ')[1])
並選擇。
failed_banks[0][closing_year=='2017']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.