从pandas数据帧中检索值时,将整数转换为字符串类型

时间:2017-08-24 15:22:55

标签: python pandas dataframe type-conversion

我正在尝试将数据输出(从Integer转换为String)从使用Pandas生成的List转换。

我从csv文件中获取了数据输出。

这是我的代码,它使用Pandas覆盖表达式(不包括显示如何生成对象'InFile'(csv文件)的部分)。

import pandas as pd
....

with open(InFile) as fp:
     skip = next(it.ifilter(
        lambda x: x[1].startswith('ID'),
        enumerate(fp)
     ))[0]

dg = pd.read_csv(InFile, usercols=['ID'], skiprows=skip)
dgl = dg['ID'].values.tolist()

目前,输出是一个List(下面的示例)。

 [111111, 2222, 3333333, 444444] 

我正在尝试匹配来自其他List的数据(填充到String或Varchar(MySQL中的数据类型),但不知何故,我无法想出任何匹配。我以前的帖子 - &gt; How to find match from two Lists (from MySQL and csv) < / p>

所以,我猜测Pandas生成的List中的数据类型是 Integer

那么,如何将数据类型从Integer转换为String?

例如,我应该在 str(10)中添加哪一行?

1 个答案:

答案 0 :(得分:1)

您可以使用pd.Series.astype

dgl = dg['ID'].astype(str).values.tolist()
print(dgl)

输出:

['111111', '2222', '3333333', '444444']