Data ada di tautan berikut: http://www.fdic.gov/ bank/individu/failed/banklist.html

Saya hanya ingin bank yang tutup pada tahun 2017. Bagaimana saya bisa melakukannya di Pandas ?

failed_banks= pd.read_html('http://www.fdic.gov/bank/individual/failed/banklist.html')
failed_banks[0]

Apa yang harus saya lakukan setelah baris kode ini untuk mengekstrak hasil yang diinginkan?

0
JaxonFlexonWaxon 10 Agustus 2017, 15:16

2 jawaban

Jawaban Terbaik

Idealnya Anda akan menggunakan

# 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]

Tetapi panda tidak mem-parsing Closing Date dengan benar sebagai objek tanggal, jadi kita perlu menguraikannya sendiri:

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)]
1
DeepSpace 10 Agustus 2017, 12:31

Sesuatu seperti ini seharusnya berhasil

Ekstrak penutupan tahun.

# 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])

Dan pilih.

failed_banks[0][closing_year=='2017']
1
Thomas Grsp 10 Agustus 2017, 12:42