繁体   English   中英

从 python 的 dataframe 列中的列表中的字符串中提取 integer 值?

[英]Extract an integer value from a string that is in a list that is in a dataframe column in python?

我有一个 dataframe 包含一个列“票”,现在包含一个 integer 值作为系列内的字符串。

print(type(train_tickets.Ticket))

<class 'pandas.core.series.Series>
train_tickets["Ticket"].head()

# Returns
1    [211536]
2    [112053]
3      [6607]
4    [111369]
5    [370376]

我想要的是:

1    211536
2    112053
3      6607
4    111369
5    370376

我可以使用它转换单个数字,但我无法获得循环或 lambda function 以返回我所期望的。

int(train_tickets["Ticket"][0][0])

# returns 
21171

我试过这个循环(以及相关的 lambda 格式)

for row in train_tickets["Ticket"]:
    Y = int(train_tickets["Ticket"][row][0])

但它返回一个键错误,self._get_with(key) 如何使用.apply(lambda) 或某种循环来做到这一点?

尝试:

train_tickets.Ticket = train_tickets.Ticket.str[0]

如果列表中的值是字符串类型,您可以执行以下操作:

train_tickets.Ticket = train_tickets.Ticket.str[0].astype(int)

将它们转换为 integer。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM