In R: Joining vector elements by row, converting vector rows to strings
11301 просмотра
3 ответа
Is there a "by row" operation in R to convert each row in a vector like this to strings?
> d= cbind("Data", c("2", "73"))
> d
[,1] [,2]
[1,] "Data" "2"
[2,] "Data" "73"
What I want is to get strings like
[,1]
[1,] "Data 2"
[2,] "Data 73"
Is there an easy way to join items by row?
Автор: gakera Источник Размещён: 13.11.2019 11:30Ответы (3)
23 плюса
Yes, there is. It is called "apply" ;-)
apply(d,1,paste,collapse=" ")
[1] "Data 2" "Data 73"
# convert to matrix using as.matrix to get exactly your solution
See ?apply
and ?paste
4 плюса
After a quick glace at ?paste
, it's clear that apply
isn't needed for the example given. It would be handy if there are several columns though.
> paste(d[,1],d[,2])
[1] "Data 2" "Data 73"
Автор: Joshua Ulrich
Размещён: 18.11.2010 03:56
3 плюса
A general way to do it without resorting to ?apply
:
do.call(paste, as.data.frame(d))
[1] "Data 2" "Data 73"
Where as.data.frame
is used to avoid subscripts.
Edit:
do.call
is a function which takes another function as first argument, and a list as second argument. It is often used to send lists of arguments to functions (in our case, the columns of d
to paste()
). We send d as a data.frame (a type of list) for this trick to work.
Вопросы из категории :
- r Как получить доступ к последнему значению в векторе?
- r Пакеты оптимизации для R
- r Есть ли у R такие операторские операции, как Perl qw ()?
- r Библиотека / инструмент для рисования тройных / треугольных графиков
- r Участки без заголовков / надписей в R
- r Расчет скользящей средней
- r Режим Emacs ESS - вкладка для области комментариев
- r Преобразование данных из многих строк во многие столбцы
- r Проверить, содержит ли вектор данный элемент
- r Поиск всех позиций для нескольких элементов в векторе
- r Разница между скобками [] и двойной скобкой [[]] для доступа к элементам списка или кадра данных
- r Написание функций на R с учетом объема работ
- r Линейная регрессия и группировка по R
- r Как заставить выполнение приостановить, поспать, подождать X секунд в R?
- r Уровни коэффициента отбрасывания в заданном кадре данных
- r Графики рядом с ggplot2
- r Как отсортировать фрейм данных по нескольким столбцам
- r Как объединить (объединить) кадры данных (внутренний, внешний, левый, правый)?
- r Поворотные и интервальные метки на оси ggplot2
- r Как избежать цикла в R: выбор элементов из списка