Вы можете использовать reshape
n=length(grep("y",names(x)))
reshape(x,t(matrix(3:ncol(x),n)),idvar="id",dir="long")
id t1 time t2 y2 se2
Study1.1 Study1 1 1 2 0.1 0.5
Study1.2 Study1 1 2 3 0.2 0.7
, или вы можете использовать:
library(data.table)
cbind(melt(setDT(x),"id",data.frame(matrix(3:ncol(x),2)),t1=x$t1)
id variable value1 value2 value3 t1
1: Study1 1 2 0.1 0.5 1
2: Study1 2 3 0.2 0.7 1
reshape(x,data.frame(matrix(3:ncol(x),2)),idvar="id",dir="long")
id t1 time t2 y2 se2
1 Study1 1 1 2 0.1 0.5
2 Study1 1 2 3 0.2 0.7
Для квантованных моделей uint8 входные значения должны находиться в диапазоне от 0 до 255. Даже с FakeQuantification входные значения во время обучения часто являются значениями с плавающей точкой в другом диапазоне (например, от 0,0 до 1,0). Mean_value и std_value управляют тем, как значения uint8 в диапазоне от 0 до 255 отображаются на значения с плавающей запятой, используемые во время обучения. Вы можете использовать эту эвристику для определения этих значений:
mean_value = значение uint8 в диапазоне [0, 255], которое соответствует плавающей точке 0.0. Так что если диапазон с плавающей запятой равен [0.0, 1.0], то mean_value = 0.
std_value = (uint8_max - uint8_min) / (float_max - float_min). Так что если диапазон с плавающей запятой равен [0.0, 1.0], то std_value = 255 / 1.0 = 255.
Мы работаем над тем, чтобы сделать это проще. Надеюсь, это поможет!