【Pandas】pandas Series convert_dtypes

Pandas2.2 Series

Conversion

方法描述
Series.astype用于将Series对象的数据类型转换为指定类型的方法
Series.convert_dtypes用于将 Series 对象的数据类型智能地转换为最佳可能的数据类型的方法

pandas.Series.convert_dtypes

pandas.Series.convert_dtypes 方法是 Pandas 库中用于将 Series 对象的数据类型智能地转换为最佳可能的数据类型的方法。以下是对该方法的详细介绍,包括语法、参数、示例及结果。

一、语法
    def convert_dtypes(
        self,
        infer_objects: bool_t = True,
        convert_string: bool_t = True,
        convert_integer: bool_t = True,
        convert_boolean: bool_t = True,
        convert_floating: bool_t = True,
        dtype_backend: DtypeBackend = "numpy_nullable",
    ) -> Self:
        ...
参数
  • infer_objects:bool 类型,默认为 True。是否应将 object 数据类型转换为最佳可能的类型。
  • convert_string:bool 类型,默认为 True。是否应将 object 数据类型转换为 string[python] 类型(即 Pandas 的字符串扩展类型,支持空值 pd.NA)。
  • convert_integer:bool 类型,默认为 True。是否应将其转换为整数扩展类型(如 Int32, Int64 等)。
  • convert_boolean:bool 类型,默认为 True。是否应将 object 数据类型转换为布尔扩展类型(boolean)。
  • convert_floating:bool 类型,默认为 True。是否应将其转换为浮点扩展类型(如 Float32, Float64 等)。如果 convert_integer 也为 True,则如果可以将浮点数忠实地转换为整数,则将优先选择整数扩展类型。
  • dtype_backend:{‘numpy_nullable’, ‘pyarrow’},默认为 ‘numpy_nullable’。应用于结果数据帧的后端数据类型。‘numpy_nullable’ 返回支持 nullable-dtype 的数据帧(默认值),‘pyarrow’ 返回支持 nullable arrow-dtype 的 pyarrow-backed 数据帧。
返回值

返回一个新的 Series 对象,其中数据类型已经被转换为最佳可能的数据类型。

示例及结果

以下是一个使用 pandas.Series.convert_dtypes 方法的示例:

import pandas as pd
import numpy as np

s = pd.Series(["a", "b", np.nan])
# 使用 convert_dtypes 方法进行数据类型转换
s_converted = s.convert_dtypes()

# 打印转换前后的 Series 对象和数据类型
print("原始 Series 对象:")
print(s)
print("原始数据类型:")
print(s.dtypes)

print("\n转换后的 Series 对象:")
print(s_converted)
print("转换后的数据类型:")
print(s_converted.dtypes)

输出结果(根据 Pandas 版本和内部实现的不同可能有所差异):

原始 Series 对象:
0      a
1      b
2    NaN
dtype: object
原始数据类型:
object

转换后的 Series 对象:
0       a
1       b
2    <NA>
dtype: string
转换后的数据类型:
string
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

liuweidong0802

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值