【问题标题】:How to type cast a dataframe column in pydatatable?如何在数据表中键入强制转换数据框列?
【发布时间】:2019-12-01 16:50:03
【问题描述】:

我正在尝试探索 pydatatable 中帧的数据类型。

这里有一个数据框:

ventas_duda_dt = dt.Frame(
    {"cust_id":[893232.34],"sales":['$123,4532.93'],"profit_perc":['10%']})

及其类型:

ventas_duda_dt.stypes

每个字段的数据类型如下:

(stype.float64, stype.str32, stype.str32)

现在我想将其中三个列从float, str, str 转换为int, float, float,在这里。去掉字段值中的这些特殊符号($,,,%)如何实现?

我正在浏览文档,但我找不到关于该主题的参考。

【问题讨论】:

    标签: python dataframe py-datatable


    【解决方案1】:

    datatable 中更改列类型的最简单方法是将新类型分配给列:

    ventas_duda_dt["cust_id"] = int
    ventas_duda_dt["sales"] = float
    ventas_duda_dt["profit_perc"] = float
    

    但是,在您的示例中,情况更复杂,因为字符串值不能直接转换。您需要了解百分号、逗号分隔的数字、货币符号等的特殊转换器。此类功能在数据表中尚不存在,但将来可能会添加它,前提是您可以指定什么正是这样的转换器应该做的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-12
      • 2016-03-08
      • 1970-01-01
      • 2020-04-15
      • 1970-01-01
      • 2019-11-16
      相关资源
      最近更新 更多