создание повторяющихся строк текста / переменной, которая вызывает значения из фрейма данных - PullRequest
1 голос
/ 17 апреля 2020

Мне нужно создать текстовый файл, содержимое которого представляет собой повторяющиеся строки текста, которые вызывают некоторое содержимое / значения, поступающие из кадра данных. Вот для иллюстрации:

Предположим, у меня есть этот фрейм данных df:

df <- data_frame(col1 = runif(5, 1, 5),
           col2 = stringi::stri_rand_strings(5, 3))

#col1 col2 
#<dbl> <chr>
#1  3.72 NmV  
#2  2.43 HqH  
#3  4.46 xfy  
#4  4.97 dgV  
#5  3.11 wS9 

Я хотел бы создать файл .txt, который будет выглядеть следующим образом:

#Group 1
first_line = 3.72
second_line = NmV

#Group 2
first_line = 2.43
second_line = HqH

.
.
.

#Group 5
first_line = 3.11
second_line = wS9

Тогда я хотел бы написать текстовый файл, который печатает эти повторяющиеся строки. Я подумываю сделать for-l oop или сделать это с помощью функции purrr s map(), но я подумал, что работа с текстами - это совершенно другая игра с мячом! Спасибо за помощь!

1 Ответ

1 голос
/ 17 апреля 2020

Мы можем создать единственную строку с помощью paste ing и затем использовать cat

library(purrr)
library(dplyr)
out <- df %>%
          mutate(rn = str_c('Group ', row_number())) %>% 
          pmap_chr(~ str_c(..3,  "\n", 'first_line = ', round(..1, 2), 
           '\n', 'second_line = ', ..2)) %>% 
         str_c(collapse="\n\n")
cat(out, file = 'filenew.txt')
...