В чем надлежащий путь состоит в том, чтобы повторно прикрепить отделенные объекты, в спящем режиме?

Вместо того, чтобы писать формулу самостоятельно, полезно использовать pipe (%>%) и dplyr::select() соответственно. (Здесь измените вашу матрицу на фрейм данных. )

library(tidyverse)
mpg
#> # A tibble: 234 x 11
#>    manufacturer model displ  year   cyl trans drv     cty   hwy fl    class
#>                     
#>  1 audi         a4      1.8  1999     4 auto… f        18    29 p     comp…
#>  2 audi         a4      1.8  1999     4 manu… f        21    29 p     comp…
#>  3 audi         a4      2    2008     4 manu… f        20    31 p     comp…
#>  4 audi         a4      2    2008     4 auto… f        21    30 p     comp…
#>  5 audi         a4      2.8  1999     6 auto… f        16    26 p     comp…
#>  6 audi         a4      2.8  1999     6 manu… f        18    26 p     comp…
#>  7 audi         a4      3.1  2008     6 auto… f        18    27 p     comp…
#>  8 audi         a4 q…   1.8  1999     4 manu… 4        18    26 p     comp…
#>  9 audi         a4 q…   1.8  1999     4 auto… 4        16    25 p     comp…
#> 10 audi         a4 q…   2    2008     4 manu… 4        20    28 p     comp…
#> # ... with 224 more rows

Выберите столбец

dplyr::select() подмножеств.

mpg %>% 
  select(hwy, manufacturer, displ, cyl, cty) %>% # subsetting
  lm(hwy ~ ., data = .)
#> 
#> Call:
#> lm(formula = hwy ~ ., data = .)
#> 
#> Coefficients:
#>            (Intercept)   manufacturerchevrolet       manufacturerdodge  
#>                2.65526                -1.08632                -2.55442  
#>       manufacturerford       manufacturerhonda     manufacturerhyundai  
#>               -2.29897                -2.98863                -0.94980  
#>       manufacturerjeep  manufacturerland rover     manufacturerlincoln  
#>               -3.36654                -1.87179                -1.10739  
#>    manufacturermercury      manufacturernissan     manufacturerpontiac  
#>               -2.64828                -2.44447                 0.75427  
#>     manufacturersubaru      manufacturertoyota  manufacturervolkswagen  
#>               -3.04204                -2.73963                -1.62987  
#>                  displ                     cyl                     cty  
#>               -0.03763                 0.06134                 1.33805

Обозначим, что -col.name исключают этот столбец. %>% позволяет формуле использовать обозначение ..

Tidyselect

Многие наборы данных группируют свои столбцы, используя подчеркивание.

nycflights13::flights
#> # A tibble: 336,776 x 19
#>     year month   day dep_time sched_dep_time dep_delay arr_time
#>                             
#>  1  2013     1     1      517            515         2      830
#>  2  2013     1     1      533            529         4      850
#>  3  2013     1     1      542            540         2      923
#>  4  2013     1     1      544            545        -1     1004
#>  5  2013     1     1      554            600        -6      812
#>  6  2013     1     1      554            558        -4      740
#>  7  2013     1     1      555            600        -5      913
#>  8  2013     1     1      557            600        -3      709
#>  9  2013     1     1      557            600        -3      838
#> 10  2013     1     1      558            600        -2      753
#> # ... with 336,766 more rows, and 12 more variables: sched_arr_time ,
#> #   arr_delay , carrier , flight , tailnum ,
#> #   origin , dest , air_time , distance , hour ,
#> #   minute , time_hour 

Например, и dep_delay, и arr_delay о времени задержки. Выбор помощников , таких как starts_with(), ends_with() и contains(), может обрабатывать столбцы такого типа.

nycflights13::flights %>% 
  select(starts_with("sched"),
         ends_with("delay"),
         distance)
#> # A tibble: 336,776 x 5
#>    sched_dep_time sched_arr_time dep_delay arr_delay distance
#>                                     
#>  1            515            819         2        11     1400
#>  2            529            830         4        20     1416
#>  3            540            850         2        33     1089
#>  4            545           1022        -1       -18     1576
#>  5            600            837        -6       -25      762
#>  6            558            728        -4        12      719
#>  7            600            854        -5        19     1065
#>  8            600            723        -3       -14      229
#>  9            600            846        -3        -8      944
#> 10            600            745        -2         8      733
#> # ... with 336,766 more rows

После этого просто %>% lm().

nycflights13::flights %>% 
  select(starts_with("sched"),
         ends_with("delay"),
         distance) %>% 
  lm(dep_delay ~ ., data = .)
#> 
#> Call:
#> lm(formula = dep_delay ~ ., data = .)
#> 
#> Coefficients:
#>    (Intercept)  sched_dep_time  sched_arr_time       arr_delay  
#>      -0.151408        0.002737        0.000951        0.816684  
#>       distance  
#>       0.001859

179
задан SCdF 6 April 2011 в 23:42
поделиться

4 ответа

Будьте в спящем режиме повторное прикрепление поддержки отсоединило объект сервалом пути, посмотрите [ https://docs.jboss.org/hibernate/orm/5.4/userguide/html_single/Hibernate_User_Guide.html#pc-detach-reattach]

0
ответ дан 23 November 2019 в 20:12
поделиться
try getHibernateTemplate().saveOrUpdate()
-6
ответ дан 23 November 2019 в 20:12
поделиться

попробуйте getHibernateTemplate (). Replicate (entity , ReplicationMode.LATEST_VERSION)

1
ответ дан 23 November 2019 в 20:12
поделиться

Недипломатичный ответ: Вы, вероятно, ищете расширенный контекст настойчивости. Это одна из основных причин Seam Framework ... Если вам сложно использовать Hibernate в Spring, в частности, ознакомьтесь с этой частью документации Seam.

Дипломатический ответ: Это описано в документах Hibernate . Если вам нужны дополнительные пояснения, посмотрите раздел 9.3.2 Сохранение Java с Hibernate под названием «Работа с отдельными объектами». Я настоятельно рекомендую вам достать эту книгу, если вы делаете что-то большее, чем CRUD с Hibernate.

19
ответ дан 23 November 2019 в 20:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: