我想将int转换为dataframe中的字符串

时间:2019-06-08 06:42:57

标签: python-3.x

我想将数据框中的列转换为字符串 看起来像这样:

company department  id  family  name    start_date  end_date
abc sales   38221925    Levy    nali    16/05/2017  01/01/2018

我想将id从int转换为string

我尝试了

data['id']=data['id'].to_string()

data['id']=data['id'].astype(str)

获得dtype('O')

我希望收到字符串

3 个答案:

答案 0 :(得分:1)

这是预期的行为。这是熊猫存储字符串的方式。

docs

  

Pandas使用对象dtype来存储字符串。

对于一个简单的测试,您可以制作一个虚拟数据框并检查其dtype。

import pandas as pd
df = pd.DataFrame(["abc", "ab"])
df[0].dtype
#Output:
dtype('O')

答案 1 :(得分:0)

FileDataSourceImpl

可以轻松转换为字符串

答案 2 :(得分:0)

您可以通过以下方式使用apply()函数来做到这一点:

data['id'] = data['id'].apply(lambda x: str(x))

这会将 id 列的所有值转换为字符串。

您可以确保值的类型如下:
type(data['id'][0])(正在检查“ id”列的第一个值)
这将给出输出str

并且data['id'].dtype将给出dtype('O'),即对象。

您还可以使用data.info()来检查有关该DataFrame的所有信息。