使用 python 从 xlsx 文件中提取特定行到列表
Extract specific row from xlsx file to a list using python
我想从 .xlsx 文件中提取特定行(假设现在我已经有了行号)到列表中。另外,我不知道是否可以,但将第一列作为列表的名称。
例如:table 我想从中提取信息:
12/31/2020 12/31/2019 12/31/2018 12/31/2017
Revenue 1.823500e+11 1.614020e+11 1.369580e+11 1.110240e+11
Revenue Growth 1.298000e-01 1.785000e-01 2.336000e-01 2.373000e-01
Cost of Revenue 8.473200e+10 7.189600e+10 5.954900e+10 4.558300e+10
Gross Profit 9.761800e+10 8.950600e+10 7.740900e+10 6.544100e+10
如果可能的话,我想按以下顺序获取信息:Revenue = ["1.8235E+11", "1.61402E+11", "1.36958E+11" , "1.11024E+11"]
我已经尝试使用 xlrd 来完成这项工作,但我总是收到一条消息
xlrd.biffh.XLRDError: Excel xlsx file; not supported
提前致谢并感谢您的帮助!
安装 openpyxl
然后使用 read_excel
:
# Python env: pip install openpyxl
# Anaconda env: conda install openpyxl
df = pd.read_excel('data.xlsx', index_col=0, engine='openpyxl')
print(df)
# Output:
12/31/2020 12/31/2019 12/31/2018 12/31/2017
Revenue 1.823500e+11 1.614020e+11 1.369580e+11 1.110240e+11
Revenue Growth 1.298000e-01 1.785000e-01 2.336000e-01 2.373000e-01
Cost of Revenue 8.473200e+10 7.189600e+10 5.954900e+10 4.558300e+10
Gross Profit 9.761800e+10 8.950600e+10 7.740900e+10 6.544100e+10
要提取行 Revenue
,请使用:
Revenue = df.loc['Revenue']
我想从 .xlsx 文件中提取特定行(假设现在我已经有了行号)到列表中。另外,我不知道是否可以,但将第一列作为列表的名称。
例如:table 我想从中提取信息:
12/31/2020 12/31/2019 12/31/2018 12/31/2017
Revenue 1.823500e+11 1.614020e+11 1.369580e+11 1.110240e+11
Revenue Growth 1.298000e-01 1.785000e-01 2.336000e-01 2.373000e-01
Cost of Revenue 8.473200e+10 7.189600e+10 5.954900e+10 4.558300e+10
Gross Profit 9.761800e+10 8.950600e+10 7.740900e+10 6.544100e+10
如果可能的话,我想按以下顺序获取信息:Revenue = ["1.8235E+11", "1.61402E+11", "1.36958E+11" , "1.11024E+11"]
我已经尝试使用 xlrd 来完成这项工作,但我总是收到一条消息
xlrd.biffh.XLRDError: Excel xlsx file; not supported
提前致谢并感谢您的帮助!
安装 openpyxl
然后使用 read_excel
:
# Python env: pip install openpyxl
# Anaconda env: conda install openpyxl
df = pd.read_excel('data.xlsx', index_col=0, engine='openpyxl')
print(df)
# Output:
12/31/2020 12/31/2019 12/31/2018 12/31/2017
Revenue 1.823500e+11 1.614020e+11 1.369580e+11 1.110240e+11
Revenue Growth 1.298000e-01 1.785000e-01 2.336000e-01 2.373000e-01
Cost of Revenue 8.473200e+10 7.189600e+10 5.954900e+10 4.558300e+10
Gross Profit 9.761800e+10 8.950600e+10 7.740900e+10 6.544100e+10
要提取行 Revenue
,请使用:
Revenue = df.loc['Revenue']