如何在pydatatable中类型转换dataframe列?

2024-06-17 10:36:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图探索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,在这里。如何通过删除字段值中的这些特殊符号($,,,%)来实现?你知道吗

我在看文档,但是我找不到关于这个主题的参考资料。你知道吗


Tags: 数据iddtfloatframe数据类型salesprofit
1条回答
网友
1楼 · 发布于 2024-06-17 10:36:10

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

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

但是,在您的示例中,情况更加复杂,因为字符串值不能直接转换。您需要知道百分号、逗号分隔的数字、货币符号等的特殊转换器。这种功能在datatable中还不存在,但将来可能会添加它,前提是您可以指定这种转换器应该做什么。你知道吗

相关问题 更多 >