Как сжать 2 или более фрейма данных с разной длиной строки в R - PullRequest
0 голосов
/ 26 августа 2018

У меня есть много фреймов данных с наблюдениями, длина которых варьируется от 400 точек данных до большинства, в среднем 220 точек данных. Я хотел бы сравнить их визуально, нормализуя их и накладывая их на графики. Я знаю, что вы можете использовать функцию слияния (), чтобы соединить два фрейма данных вместе, но это производит на. Что меня интересует, так это то, как я могу сделать, не добавляя или теряя данные. Я не хочу просто объединять свои данные.

например

скажи, что у меня есть этот фрейм данных с 101 наблюдением

df <- as.data.frame(cbind(seq(1,101),seq(100,200))) 
names(df) <- c("observation","data")
df

Я хочу объединить его с другим фреймом данных с 21 наблюдением

df1 <- as.data.frame(cbind(seq(1,21),seq(200,300,by=5))) 
names(df1) <- c("observation","data")
df1

когда вы используете функцию merge (), она оставляет пустую информацию (я этого не хочу). Это сложный вопрос, потому что я не знаю, как правильно его задать.

Вывод, который я пытаюсь получить, должен выглядеть примерно так.

dfReduced <-as.data.frame(cbind(seq(1,21),seq(100,200,by=5),seq(200,300,by=5)))
names(dfReduced) <- c("observation","data 1", "data 2")
dfReduced

Теперь вы можете видеть, как df сокращается до слияния с df1, производя dfReduced. Этот процесс, который я ищу, сохраняет первоначальную структуру. Как я могу сделать это с такими простыми данными, не говоря уже о моих реальных данных, которые не такие простые вещи, как это. У меня есть довольно много данных этого временного ряда, которые касаются давления во времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...