zoukankan      html  css  js  c++  java
  • Pandas DataFrame.astype()使用实例

    astype()方法通常用于将Pandas对象转换为指定的dtype.astype()函数。它还可以将任何合适的现有列转换为分类类型。

    当我们想将特定的列数据类型转换为另一种数据类型时, 它就可以使用。我们还可以使用Python字典的输入来一次更改多个列类型。在字典中, 键标签对应于列名, 值标签对应于我们要在列中使用的新数据类型。

     

    句法

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

    参数

    dtype:它使用numpy.dtype或Python类型将整个pandas对象转换为相同类型。它还可以使用{col:dtype, ?}, 其中col表示列标签, 而dtype是numpy.dtype或Python类型, 用于将DataFrame的一个或多个列转换为特定于列的类型。

    复制:如果copy = True, 则返回一个副本。设置copy = False时要小心, 因为对值的更改可能会传播到其他Pandas对象。

    错误:对于提供的dtype, 它控制对无效数据的异常引发。

    • 引发:它允许引发异常。
    • ignore:忽略异常。错误返回原始对象。

    kwargs:这是一个关键字参数, 将传递给构造函数。

     

    强制转换:它返回与调用方相同的类型。

     

    例子

    import pandas as pd
    
    a = {'col1': [1, 2], 'col2': [3, 4]}
    info = pd.DataFrame(data=a)
    info.dtypes
    # We convert it into 'int64' type. info.astype('int64').dtypes info.astype({'col1': 'int64'}).dtypes
    x
    = pd.Series([1, 2], dtype='int64') x.astype('category')
    cat_dtype
    = pd.api.types.CategoricalDtype(categories=[2, 1], ordered=True) x.astype(cat_dtype)
    x1
    = pd.Series([1, 2]) x2 = x1.astype('int64', copy=False) x2[0] = 10 x1 # note that x1[0] has changed too

    输出

    0    12
    1     2
    dtype: int64

    pandas转数组
    我们可以使用numpy.array来创建一个矩阵,当然这个矩阵可以是 N 维的,创建的时候,需要传入一个数组,数组是多少维,创建的矩阵就是多少维. 创建矩阵的时候,也可以传入第二个参数(dtype), 指定数据类型.
    np.array(pandas)
    
    
    

    数组转pandas

    pandas.DataFrame(numpy)
    
    
    import numpy as np
    
    array = np.array([[1,2,3],
                      [4,5,6],
                      [7,8,9]], dtype=np.float64)
    # array([[1, 2, 3],
    #        [4, 5, 6],
    #        [7, 8, 9]])
    type(array)
    numpy.ndarray
    
    
    


  • 相关阅读:
    公司的CMS参数
    Kafka 如何保证消息可靠性
    我来了
    spring解决乱码
    mybatis反向工程
    Unicode控制字符
    功能跟进记录
    创建IDataProvider实例
    腾讯2016研发工程师笔试题36车 6跑道 没有计时器 最少要几次取前三
    .net mvc下拉列表DropDownList控件绑定数据
  • 原文地址:https://www.cnblogs.com/Summer-skr--blog/p/13786642.html
Copyright © 2011-2022 走看看