pandas字符串为数字

时间:2016-08-31 01:46:07

标签: python pandas numeric

我有一组像

这样的数据
        a      b
0  type 1   True
1  type 2  False

如何保留列a的数字部分并将ture转换为1,同时将false转换为零。以下是我想要的。

   a  b
0  1  1
1  2  0

1 个答案:

答案 0 :(得分:1)

您可以按如下方式将布尔值转换为整数:

df['b'] = df.b.astype(int)

根据列A中文字的性质,您可以执行以下操作:

a)在空间上拆分并取第二部分(根据需要使用字符串或整数)。

df['a'] = df.a.str.split().str[1]  # Optional `.astype(int)`

b)使用正则表达式从字符串末尾提取任何数字(\d*)。

df['a'] = df.a.str.extract(r'(\d*)$')  # Optional `.astype(int)`