DataFrame浮动到Ints?

时间:2018-02-22 13:42:43

标签: python pandas dataframe

我是编程新手,我编写了一个使用Python Pandas读取和修改大型Excel文件的程序。在代码中我有以下几行:

df1 = df1.apply(lambda x : pd.to_numeric(x,errors='ignore'))

我需要它做什么,但它也将我的标题下的数据转换为浮点数。有没有办法让他们转而使用int类型?

df1是一个数据框,我试图用它的内容创建一个嵌套字典。

1 个答案:

答案 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

只有事先了解您的专栏才会有效。