我是编程新手,我编写了一个使用Python Pandas读取和修改大型Excel文件的程序。在代码中我有以下几行:
df1 = df1.apply(lambda x : pd.to_numeric(x,errors='ignore'))
我需要它做什么,但它也将我的标题下的数据转换为浮点数。有没有办法让他们转而使用int类型?
df1是一个数据框,我试图用它的内容创建一个嵌套字典。
答案 0 :(得分:4)
选项2
将其用于现有数据框中的数字列列表:
cols = ['col1', 'col2', 'col3']
df1[cols] = df1[cols].apply(pd.to_numeric, errors='ignore', downcast='integer')
标准astype(int)
是次优的,因为它默认不会向下转发。
选项1
正如@AntonvBR所提到的,理想情况下,如果可能的话,您希望读入系列作为下采样整数。然后不需要这种单独的转换。
例如,dtype
的{{1}}参数接受字典输入:
pd.read_excel
只有事先了解您的专栏才会有效。