从对象到字符串的熊猫dtype转换

我有一个csv文件,其中有几列是数字,很少是字符串。 当我尝试myDF.dtypes它将所有字符串列显示为object

  • 在这之前有人问了一个相关的问题,为什么这样做。 是否有可能重新从对象到字符串的dtype

  • 另外,一般来说,有没有简单的方法可以将dtypeint64float64重新转换为int32float32并保存数据的大小(在内存中/磁盘上)?


  • 所有字符串都表示为可变长度(这是dtype所持有的object )。 如果你愿意,你可以做series.astype('S32') ; 但是如果您将它存储在DataFrame中或对它做了很多工作,它将会被重写。 这是为了简单。

    某些序列化格式,例如HDFStore将字符串作为固定长度字符串存储在磁盘上。

    如果你愿意,你可以使用series.astype(int32) ,它将以新的类型存储。


    df = your dataframe object with values
    print('dtype in object form :')
    print(df.dtypes[df.columns[0]])    // output: dtype('O')
    print('ndtype in string')
    print(str(df.dtypes[df.columns[0]]))    // output: 'object'
    
    链接地址: http://www.djcxy.com/p/19167.html

    上一篇: pandas dtype conversion from object to string

    下一篇: creating stream to iterate over from string in Python