2016-06-01 7 views
-1

Я хотел бы преобразовать столбец в строку. Таким образом, я использую функцию «reshape», чтобы сделать это. Точнее, у меня есть:Преобразование столбца в строку

`n = c(2, 3, 5) 
s = c("aa", "bb", "cc") 
b = c(TRUE, FALSE, TRUE) 
df = data.frame(n, s, b)` 

Дело в том, что у меня есть несколько значений «S» (всегда же повторяются) для каждого «п».

Я использую:

reshape(df, idvar = "s", ,direction = "wide", varying = list("b")) 

Я делаю ошибку где-то, но я не могу понять это.

+0

Пожалуйста, покажите воспроизводимый пример использования 'dput' и не с' images'. Кроме того, изображение нечеткое с большим количеством пробелов. – akrun

+0

Загляните в na.locf из пакета zoo, затем [измените данные с длинного на широкий формат] (http://stackoverflow.com/questions/5890584) – zx8754

ответ

0

Вы можете использовать cbind.data.frame() вместе с table() функции

> df <- data.frame(Country = c("Aus","Ind","NZ"), Year= c(1956,1957,1958)) 
> df 
    Country Year 
1  Aus 1956 
2  Ind 1957 
3  NZ 1958 

> table(cbind.data.frame(df$Country,df$Year)) 
       df$Year 
df$Country 1956 1957 1958 
     Aus 1 0 0 
     Ind 0 1 0 
     NZ  0 0 1 
Смежные вопросы