【发布时间】:2016-01-12 14:37:21
【问题描述】:
我的代码中有这一行,它将我的数据转换为数字...
data["S1Q2I"] = data["S1Q2I"].convert_objects(convert_numeric=True)
问题是现在新的 pandas 版本(0.17.0)说这个功能已被弃用.. 这是错误:
FutureWarning: convert_objects is deprecated.
Use the data-type specific converters pd.to_datetime,
pd.to_timedelta and pd.to_numeric.
data["S3BD5Q2A"] = data["S3BD5Q2A"].convert_objects(convert_numeric=True)
所以,我去了新文档,但找不到任何关于如何使用新函数转换数据的示例...
它只是这样说的:
“DataFrame.convert_objects 已被弃用,取而代之的是特定类型的函数 pd.to_datetime、pd.to_timestamp 和 pd.to_numeric(0.17.0 中的新功能)(GH11133)。”
任何帮助都会很好!
【问题讨论】:
-
就是这样:
data['S1Q2I'] = pd.to_numeric(data['S1Q2I']) -
如果可以的话,如果我想转换整个 DataFrame 怎么办? .convert_objects 将作用于 DataFrame,但 .to_numeric 仅作用于 Series。
-
相同的请求。如何转换整个 DataFrame ?
-
新的首选方法根本不捕获
.convert_objects的功能,它可以推断数据类型。如果您事先不知道列的类型,这很重要。