Pandas 数据帧infer_objects()方法

原文:https://www.studytonight.com/pandas/pandas-dataframe-infer_objects-method

在本教程中,我们将学习 PandasDataFrame.infer_objects()的方法。它试图为对象列推断更好的数据类型。此方法尝试对象类型化列的软转换,保持非对象和不可转换列不变。推理规则与正常序列或数据帧构建期间相同。

下图显示了DataFrame.infer_objects()方法的语法。

句法

DataFrame.infer_objects()

示例 1:DataFrame.infer_objects()方法

让我们取一个数据帧,检查数据帧的数据类型。使用DataFrame.infer_objects()方法转换数据帧各列的数据类型。

#importing pandas as pd
import pandas as pd
df = pd.DataFrame({'a': ["abc",7, 1, 5], 'b': ["xyz",'3','2','1']})
print("----DataTypes of the DataFrame is-----")
print(df.dtypes)
df_1 = df.iloc[1:]
print("----DataTypes of the new DataFrame is-----")
print(df_1.dtypes)
print("----After conversion DataTypes of the DataFrame is----")
df_2=df_1.infer_objects()
print(df_2.dtypes)

-数据帧的数据类型为- a 对象 b 对象 数据类型:对象 -新数据帧的数据类型为- a 对象 b 对象 数据类型:对象 -转换后数据帧的数据类型为- a int64 b 对象 数据类型:对象

示例 2:DataFrame.infer_objects()方法

这是另一个使用DataFrame.infer_objects()方法转换列的数据类型的例子。

#importing pandas as pd
import pandas as pd
df = pd.DataFrame({'a': [7, 1, 5], 'b': ['3','2','1']}, dtype='object')
print("----DataTypes of the DataFrame is-----")
print(df.dtypes)
print("----After conversion DataTypes of the DataFrame is----")
df_1=df.infer_objects()
print(df_1.dtypes)

-数据帧的数据类型为- a 对象 b 对象 数据类型:对象 -转换后数据帧的数据类型为- a int64 b 对象 数据类型:对象

结论

在本教程中,我们学习了 PythonPandasDataFrame.infer_objects()方法。我们使用DataFrame.infer_objects()方法转换数据帧的列类型。