【问题标题】:Changing multiple dataframe columns datatype using a list of columns [duplicate]使用列列表更改多个数据框列数据类型[重复]
【发布时间】:2018-12-24 22:12:15
【问题描述】:

我有一个 .csv,我将它放入一个包含大量列的数据帧 (df) 中。以下是表格的精简版:

Quarter  Response   Exception   Approved   On Hold
   2017         5         4           4          7
2017 Q1         3         5           2          7
2017 Q1         2         6           8          9
2017 Q2         8         4           5          3
2017 Q2         3         8           8          2
2017 Q2         3         6           8          6

当前所有列的数据类型均为对象。 四分之一对象 响应对象 异常对象 批准对象 暂停对象

我想将一些列(不是全部)的数据类型更改为浮点数。是否可以创建一个我想隐藏的列列表并使用它来更改这些特定列的数据类型?例如,要转换的列列表可能是:

Columns = ['Response', 'Exception', 'Approved','On Hold']

df[Columns].apply(pd.to_numeric, errors = 'coerce')

Quarter   object
Response   float
Exception  float
Approved   float
On Hold    float

我已尝试运行上述内容,但并非所有请求的列都有其数据类型更改。

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    df.apply() 方法不会更改原始数据框,因此您需要以下内容:

    df[Columns] = df[Columns].apply(pd.to_datetime)
    

    【讨论】:

      猜你喜欢
      • 2014-01-20
      • 2022-01-10
      • 2018-05-28
      • 2012-12-26
      • 1970-01-01
      • 2019-11-08
      • 1970-01-01
      • 2014-03-05
      • 2020-04-15
      相关资源
      最近更新 更多