R言語による医療データ分析

R言語によるデータ分析のオンラインコースを中心に、さまざまなデータ分析について記載してあります。

088-090 練習課題

まとめ一覧

練習課題

  • 次のデータについて、
dft <- tibble(
  target1 = c("abc500ml 3unit"  ,"def250ml 4unit","ghi100ml 5unit"    ),
  target2 = c("AST 50IU"        ,"HbA1c 5.0%"    ,"BMI 23.1kg/m^2"    ),
  target3 = c("ope:A 4.5hr 80ml","ope:B 3hr 10ml","ope:C 12.5hr 100ml")
)
  • 1 target1の"xxx100ml 2unit"の、unit前の数字をぬきだしてください。
answer <- dft %>% 
  mutate(a = str_extract(target1,"\\d+(?=unit)"))

answer
  • 2 target1の"xxx100ml 2unit"の、ml前の数字をぬきだしてください。
answer <- dft %>% 
  mutate(a = str_extract(target1,"\\d+(?=ml)"))
answer
  • 3 target1の"xxx100ml 2unit"の、xxx部分を抜き出して下さい。
answer <- dft %>% 
  mutate(a = str_extract(target1,"[a-z]+(?=\\d+)"))
answer
  • 4 target2の検査結果のみを抜き出してください。
answer <- dft %>% 
  mutate(
    a = str_extract(
      target2,
      "(?<=\\s)((\\d+\\.\\d+)|(\\d+))"
      )
  )

answer
  • 5 target2の単位を抜き出して下さい
  • (str_replace(<ベクトル>,<正規表現>,<おきかえ>)を使うとマッチしたものをおきかえられます。)
answer <- dft %>% 
  select(target2) %>% 
  mutate(
    a = str_extract(
      target2,
      "(?<=\\s).+$"
    )
  ) %>% 
  mutate(
    a2 = str_replace(
      a,
      "^(\\d+\\.\\d+)|^(\\d+)",
      ""
    )
  )
 answer 
  • 6 target3の手術名を抜き出して下さい
asnwer <- dft %>% 
  mutate(a = str_extract(target3,"(?<=:)\\w+"))
  • 7 target3の出血量をぬきだしてください。
answer <- dft %>% 
  mutate(a = str_extract(target3, "\\d+(?=ml)"))

まとめ一覧