Pandas 数据帧astype()方法

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

在本教程中,我们将学习 PandasDataFrame.astype()的方法。这个方法将 pandas 的对象转换为指定的类型,这意味着它允许我们将数据类型从一种类型转换为另一种类型。我们可以使用字典更改指定的列数据类型。下面是DataFrame.astype()方法的语法。

句法

DataFrame.astype(dtype, copy=True, errors='raise')

因素

数据类型:数据类型,或列名 dict->数据类型。使用numpy.dtype 或 Python 类型将整个 Pandas 对象转换为同一类型。或者,使用{col: dtype,…},其中 col 是列标签,dtype 是numpy.dtype或 Python 类型,将一个或多个数据帧的列转换为特定于列的类型。

副本:代表布尔(真或假),默认为真。当copy=True.时,它返回一个副本

错误:包括‘提高’、‘忽略’,默认为‘提高’。如果是,

  • raise:允许引发异常。

  • ignore:抑制异常,出错时返回原对象。

示例 1:使用DataFrame.astype()方法转换数据帧的数据类型

我们可以使用DataFrame.astype()方法将数据帧的所有列数据类型转换为另一种数据类型。下面的例子显示了同样的情况。

data = {'A':[1,2,3,4,5],'B':[6,7,8,9,10]}
df = pd.DataFrame(data) 
print("----Before converting datatype of DataFrame-----")
print(df.dtypes)
print("----After converting datatype of DataFrame-----")
print(df.astype('int32').dtypes)

一旦我们运行程序,我们将得到以下结果。

-转换数据帧数据类型前- A int64 B int64 数据类型:对象 -转换数据帧数据类型后- A int32 B int32 数据类型:对象

示例 2:使用DataFrame.astype()方法转换数据帧的单列数据类型

我们可以使用DataFrame.astype()方法将数据帧的单列数据类型转换为另一种数据类型。下面的例子显示了同样的情况。

data = {'A':[1,2,3,4,5],'B':[6,7,8,9,10]}
df = pd.DataFrame(data) 
print("----Before converting datatype of DataFrame-----")
print(df.dtypes)
print("----After converting single column datatype of DataFrame-----")
print(df.astype({'A': 'int32'}).dtypes)

一旦我们运行程序,我们将得到以下结果。

-转换数据帧数据类型前- A int64 B int64 数据类型:对象 -转换数据帧单列数据类型后- A int32 B int64 数据类型:对象

示例 3:使用DataFrame.astype()方法转换数据帧的单列数据类型

此示例与前面的示例类似,转换数据帧的单列数据类型并检查数据帧。

data = {'A':[1,2,3,4,5],'B':[6,7,8,9,10]}
df = pd.DataFrame(data) 
print("----After converting single column datatype of DataFrame-----")
df['B']=df['B'].astype('float')
print(df.dtypes)
print("-----DataFrame after converting to float datatypes-----")
print(df)

一旦我们运行程序,我们将得到以下结果。

-转换数据帧的单列数据类型后- A int64 B float64 数据类型:对象 -转换为 float 数据类型后的数据帧- A B 0 1 6.0 1 2 7.0 2 3 8.0 3 4 9.0 4 5 10.0

结论

在本教程中,我们学习了 PandasDataFrame.astype()方法。我们将数据帧的数据类型列转换为另一种数据类型,并检查了数据帧。