Я хочу сохранить дополнительную информацию поверх data.frame и вернуть ее из функции. как вы можете видеть - дополнительные данные исчезают. пример:возвращает полный data.frame из функции в R
> d<-data.frame(N1=c(1,2,3),N2=(LETTERS[1:3]))
> d
N1 N2
1 1 A
2 2 B
3 3 C
> d.x = 3
> d
N1 N2
1 1 A
2 2 B
3 3 C
> d.x
[1] 3
> foo1 <- function() {
+ d<-data.frame(N1=c(1,2,3),N2=(LETTERS[1:3]))
+ d.x=3
+ return(d)
+ }
>
> d1<-foo1()
> d1
N1 N2
1 1 A
2 2 B
3 3 C
> d1.x
Error: object 'd1.x' not found
я посмотрел в assign
, но так как data.frame создается внутри функции и возвращается я предполагаю, что это не имеет значения здесь. Спасибо.
Это мало смысла. Как именно значение 3 должно быть добавлено «поверх» кадра данных d? Новая строка? Атрибут? – joran
Я знаю, что вы имеете в виду, но он работает, и это то, что мне нужно. единственная проблема заключается в том, что когда я возвращаю data.frame из функции, дополнительные данные не возвращаются. Мне просто нужно вернуть структуру данных, содержащую как строки данных, так и метаданные. – haki
вам нужно минимальное введение в R. d.x - отдельный объект, никак не связанный с x. если вы хотите иметь столбец в d, называемый x, то вы ссылаетесь на него как на d $ x – lebatsnok