Изучение EF Code First: Какие недостатки по сравнению с моделью first?

Это кажется довольно легким:

mapply(c,df,df[,2:1])
     x y
[1,] 1 3
[2,] 2 4
[3,] 3 1
[4,] 4 2

Для этого простого случая вам нужно вернуть его обратно в фреймворк данных (поскольку mapply упрощает его до матрицы):

as.data.frame(mapply(c,df,df[,2:1]))
  x y
1 1 3
2 2 4
3 3 1
4 4 2

Важное примечание 1 : Похоже, что обратное отношение типа применяется, когда ваш фреймворк содержит векторы разных типов:

df<-data.frame(x=1:2,y=3:4,z=c('a','b'))
mapply(c,df,df[,c(2:1,3)])
     x y z
[1,] 1 3 2
[2,] 2 4 1
[3,] 3 1 2
[4,] 4 2 1

Важное примечание 2 : Это ужасно, если у вас есть факторы.

df<-data.frame(x=factor(1:2),y=factor(3:4))
mapply(c,df[,1:2],df[,2:1])
     x y
[1,] 1 1
[2,] 2 2
[3,] 1 1
[4,] 2 2

Итак, если у вас есть все числовые данные, все в порядке.

0
задан AyKarsi 8 November 2011 в 04:56
поделиться