R: Добавить элементы paste() в файл

Я использую base::paste в цикле:

for (k in 1:length(summary$pro))
{
  if (k == 1)
    mp <- summary$pro[k]
  else
    mp <- paste(mp, summary$pro[k], sep = ",")
}

mp выходит как одна большая строка, где элементы разделяются запятыми.

Например mp является "1,2,3,4,5,6"

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

write.table(mp, file = recompdatafile, sep = ",")

Тем не мение, mp просто появляется в CSV как одна большая строка в отличие от разделения. Как мне достичь желаемого формата?

К вашему сведению, я также пытался конвертировать mp в список, и strsplit()это ни один из которых не работал.

Как только я добавил summary$pro в файл, как я могу добавить summary$me (который имеет одинаковый формат), в одной строке с несколькими столбцами?

Спасибо,

п

1 ответ

Решение

Если вы хотите записать что-то в файл, write.table() не единственный способ. Если вы хотите избежать заголовков и кавычек и тому подобное, вы можете использовать более прямой cat, Например

cat(summary$pro, sep=",", file="filename.txt")

выпишет вектор значений из summary$pro разделенные запятыми более прямо. Вам не нужно сначала строить строку. (И построение строки по одному элементу за раз, как вы делали выше, в любом случае, является плохой практикой. Большинство функций в R могут одновременно работать с целым вектором, включая paste).

Другие вопросы по тегам