python pandas astype,Python Pandas DataFrame.astype()用法及代码示例

Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统。 Pandas是其中的一种,使导入和分析数据更加容易。

DataFrame.astype()方法用于将pandas对象转换为指定的dtype。astype()函数还提供了将任何合适的现有列转换为分类类型的功能。

DataFrame.astype()当我们想将特定的列数据类型转换为另一种数据类型时,该函数非常方便。不仅如此,我们还可以使用Python字典输入一次更改多个列类型。字典中的键标签与列名相对应,字典中的值标签与我们希望列属于的新数据类型相对应。

用法: DataFrame.astype(dtype, copy=True, errors=’raise’, **kwargs)

参数:

dtype:用一个numpy.dtype或Python类型将整个pandas对象转换为相同类型。或者,使用{col:dtype,…},其中col是列标签,而dtype是numpy.dtype或Python类型,以将DataFrame的一个或多个列转换为column-specific类型。

copy:当copy = True时返回一个副本(要非常小心,将copy = False设置为数值的更改,然后可能会传播到其他 Pandas 对象)。

errors:控制针对提供的dtype的无效数据引发异常。

引发:允许引发异常

忽略:禁止异常。错误返回原始对象

kwargs:keyword参数传递给构造函数

返回值:演员:来电者类型

有关在代码中使用的CSV文件的链接,请单击此处

范例1:转换“权重”列数据类型。

# importing pandas as pd

import pandas as pd

# Making data frame from the csv file

df = pd.read_csv("nba.csv")

# Printing the first 10 rows of

# the data frame for visualization

df[:10]

python pandas astype,Python Pandas DataFrame.astype()用法及代码示例_第1张图片

由于数据具有一些“nan”值,因此,为了避免出现任何错误,我们将删除所有包含以下内容的行nan值。

# drop all those rows which

# have any 'nan' value in it.

df.dropna(inplace = True)

python pandas astype,Python Pandas DataFrame.astype()用法及代码示例_第2张图片

# let's find out the data type of Weight column

before = type(df.Weight[0])

# Now we will convert it into 'int64' type.

df.Weight = df.Weight.astype('int64')

# let's find out the data type after casting

after = type(df.Weight[0])

# print the value of before

before

# print the value of after

after

输出:

d6f9ccccc1c6eab635e76671a770e71b.png

481e22552657866b0af770f6e39c3809.png

# print the data frame and see

# what it looks like after the change

df

python pandas astype,Python Pandas DataFrame.astype()用法及代码示例_第3张图片

范例2:一次更改多于一列的数据类型

改变Name列到分类类型和Age列为int64类型。

# importing pandas as pd

import pandas as pd

# Making data frame from the csv file

df = pd.read_csv("nba.csv")

# Drop the rows with 'nan' values

df = df.dropna()

# print the existing data type of each column

df.info()

输出:

python pandas astype,Python Pandas DataFrame.astype()用法及代码示例_第4张图片

现在,我们一次更改两个列的数据类型。

# Passed a dictionary to astype() function

df = df.astype({"Name":'category', "Age":'int64'})

# Now print the data type

# of all columns after change

df.info()

输出:

python pandas astype,Python Pandas DataFrame.astype()用法及代码示例_第5张图片

# print the data frame

# too after the change

df

输出:

python pandas astype,Python Pandas DataFrame.astype()用法及代码示例_第6张图片

你可能感兴趣的:(python,pandas,astype)