繁体   English   中英

通过日期列过滤熊猫中的数据框

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

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM