【发布时间】:2021-02-07 10:11:17
【问题描述】:
我有一个如下所示的电子表格:
我正在尝试将其读入数据框:
def loading_nasdaq_info_from_spreadsheet():
excel_file = 'nasdaq.xlsx'
nasdaq_info_dataframe = pandas.read_excel(excel_file, index_col=0)
# data cleaning
nasdaq_info_dataframe.dropna()
return nasdaq_info_dataframe
if __name__ == '__main__':
df = loading_nasdaq_info_from_spreadsheet()
print(df.loc['symbol'])
我经常得到
"raise KeyError(key) from err KeyError: 'Symbol'"
我想打印或使用哪个键并不重要。它总是同样的错误。更糟糕的是,即使我在尝试时手动(在 excel 中)将所有内容都设置为文本
nasdaq_info_dataframe.applymap(lambda text: text.strip())
我明白了
'float' 没有 strip()
我已经为此奋斗了几个小时,所以请帮助我。
编辑:
打印
print(df.loc)
给予
打印
打印(df.columns)
给予
索引(['Name', 'Sector', 'Industry'], dtype='object')
此外,如果我通过删除“index_col=0”来删除多索引,我在打印 df.loc['Symbol'] 时仍然会遇到相同的 keyerror
打印 df.head() 给出
【问题讨论】:
-
你能用
print(df.loc)替换print(df.loc['symbol'])看看打印出来的内容吗?然后用结果更新您的问题? -
是的,我编辑了帖子@Oddity
-
使用
df.columns获取列名。 -
print(df.head())的输出是什么。 -
@Ferris 又一次,我更新了帖子,看起来阅读文件中出了点问题,但我不知道是什么