我想导入一部分的html表到一个数据框。
下表为:在下面,我只想导入"Total Electric Industry"
我正在运行下面的代码在谷歌colab:
# Total residential customers
us_res_html = 'https://www.eia.gov/electricity/annual/html/epa_02_01.html'
us_res = pd.read_html(us_res_html)
us_res = us_res[1]
print(type(us_res))
print(us_res.columns)
print(us_res.dtypes)
# Consider only the total electric industry table
# The table starts with "Total Electric Industry"
# Next table starts with "Full-Service Providers"
# These texts were repeated in all the columns; Hence, search in the first column
start_idx = us_res[us_res[us_res.columns[0]]=="Total Electric Industry"].index
end_idx = us_res[us_res[us_res.columns[0]]=="Full-Service Providers"].index
当前输出:
Int64Index([], dtype='int64')
1条答案
按热度按时间z0qdvdin1#
首先删除第一列中的不间断空格
\xa0
:然后,可以在第一次匹配之后比较所有值的第一列
DataFrame.iloc
和Series.cummax
,对于反转掩码,使用~
并在boolean indexing
中过滤,最后通过转换为整数,按iloc
的位置移除第一行: