gpt4 book ai didi

r - 如何抓取 "-"之后的一些字符?

转载 作者:行者123 更新时间:2023-12-01 14:00:01 24 4
gpt4 key购买 nike

假设我的表中有一个“选项代码”列,数据如下:

m1803-C-2550
m1807-P-3050

我想获取“-”之间的 C/P 作为我的新变量“期权类型”,以及第二个“-”之后的 2550/3050 作为我的新变量“执行价格”。

如何使用 tidyverse 进行编码?

现在,我可以通过以下方式解决第一个问题

tbl %>% mutate(option_type = str_sub(option_code, str_locate(option_code, "[CP]"))

但是我无法解决我的第二个问题,或者你们可能有一个优雅的方法来解决我的第一个问题。

最佳答案

您可以在 tidyr 中使用 separate() 通过分隔符分割字符串。

library(tidyr)

df %>%
separate(option_code, c(NA, "option_type", "strike_price"))

# option_type strike_price
# 1 C 2550
# 2 P 3050
  • NA 表示删除第一部分,即 m1803
  • 如果您想保留 option_code,则只需添加参数 remove = F

数据

df <- data.frame(option_code = c("m1803-C-2550", "m1807-P-3050"))

关于r - 如何抓取 "-"之后的一些字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61971567/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com