我在spyder中编写的代码在python(3.6)IDLE中不起作用。
import pandas as pd
df = pd.read_excel('file.xlsx', usecols = ['A','B'])
print(df)
这应该打印DF,但它只打印一个空框架。我已经安装了Pandas和xlrd。我如何在IDLE中完成这项工作?
编辑:
这是excel表。
Edit2:这是输出。
Empty DataFrame
Columns: []
Index: []
当我尝试编写带有DF错误的代码时。
代码示例:
keylist = []
list1, list2 = df['A'].tolist(), df['B'].tolist()
for i in zip(list1, list2):
val = map(str, i)
keylist.append('/'.join(val))
print(keylist)
KeyError:' A'
我认为python试图用空DF做一些事情。但是如何让它正确读取excel文件?
答案 0 :(得分:2)
如果使用列名,我认为usecols
必须是String:
df = pd.read_excel('file.xlsx', usecols = 'A,B')
我已对此进行了测试,如上所述。
来自文档:
usecols:int或list,默认无
如果None则解析所有列,If int则表示最后一列 解析如果整数列表则表示列号列表 解析如果字符串则表示以逗号分隔的Excel列列表 字母和列范围(例如“A:E”或“A,C,E:F”)。范围是 包括双方。