

dplyrでrowwiseからのmutateを試みていますが、うまく行かないです。

・以下コードを実行すると、エラーになります。

[code]

    df %>% rowwise() %>% mutate(row_max= max(starts_with("X")))
    Error: No tidyselect variables were registered
    
[/code]

・そのため、回避して

[code]

    col %>% rowwise() %>% mutate(row_max= max(X1:X17))
    
[/code]

とすると、一番大きい値が引っかからないです。  
1.90e-3や7.54e-3 のような値が入っているため正確に判断されていないのでしょうか。  
（1.90e-3と7.54e-3が同じ行にあるのに1.90e-3がmaxとして選ばれているようです。  
1.90e-3<7.54e-3はTrueと出るのですが。）

詳しい方、よろしくお願いいたします。


CC BY-SA 4.0
2020-01-07T17:51:54.553
62047
2020-01-09T16:21:15.933
2020-01-09T16:21:15.933
12457
12457
question
r tidyverse dplyr
rowwiseからのmutate


`purrr::pmap()`を使うのが良いかと思います。

[code]

    # irisデータの"Sepal"から始まる最大値をmutate
    iris %>% mutate(max = select(., starts_with('Sepal')) %>% pmap(., ~ max(.)))
    
[/code]


CC BY-SA 4.0
2020-01-08T00:56:32.303
62049
2020-01-08T00:56:32.303
36395
62047
answer