簡體   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