[英]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.