The Community has a new sign in method! Instead of using a password, sign in with the verification code emailed to you from My JMP. Learn more
Choose Language Hide Translation Bar
Level III

Automatization of Immunohistochemistry Data Analysis for Protocol Validation (2023-EU-30MP-1318)

Marie GERUS-DURAND, Principal Scientist / Validation Engineer, Cerba Research


Cerba Research is a global company providing high-quality, specialized analytical and diagnostic solutions for clinical trials. Cerba Research Montpellier develops customized immunohistochemistry protocols to detect the expression of selected targets on patients’ tissue sections. To be used in clinical trials, these protocols must meet the regulatory agencies’ criteria to ensure that the protocol will allow consistent results on precious patients’ samples. With the diversity of parameters evaluated and the types of evaluation possible in implementing these custom protocols, automating data analysis became a need. Thanks to various JMP® tools, we have developed an automated analysis that saves time and homogenizes protocol performance reports by including statistical and graphical data in a Dashboard. This process, submitted as JMP Add-in, has been incorporated into our user workflows, thus facilitating our procedures.



Used version: JMP v16.1.0



Hello.  My  name  is  Marie  Gérus-Durand,  and  I'm  working  for  C erba Research  Montpellier.  Today,  I  will  show  you  how  we  set  up  automatization  of  immunohistochemistry  data  analysis  for  protocol  validation  in  Montpellier  using  JMP  and  its  tools  like  dashboard  and  add-in  functions.

First,  some  words  about   Cerba Research,  it's  a  worldwide  company  with  capabilities  in  all  the  continents.  Here  I  highlighted  in  yellow  the  department  I'm  working  for.  It's  a  Histopathology  EHC  Department.  As  you  can  see,  I'm  based  in  Montpellier  in  France. W e  have also  other  labs  in  US,  in  New  York,  and  in  Taiwan  in  Taipei.

First  of  all,  what  is  immunohisto chemistry?  The  aim  of  the  technique  is  to  detect  targets protein  mainly  on  a  tissue  sample.  Here  you  have  a  slice  of  a  tissue,  for  example,  when  you  do  a  biopsy.  We  will  look  at  the  targets  of  interest  using antibodies,  which  will  detect  the  target.  This  antibody  is  recognized  by  another  one  which  is  combined  with  chromal  fluoroform  or  active  components  that  allow  the  detection  of  the  target.  Here  you  see,  for  example,  these  three  components  are  highlighted,  meaning  that  antibodies  bind  it  and  we  can  detect  it.  After  the  experiment,  we  can  can  look  at  the  slides  under  microscope  or  using  a  scanner,  which  allow  visualization  and  analysis  of  the  results.

On  the  next  slide,  I  just  zoom  in  so  you  can  see  better  what  it  looks  like.  Here  it's  a  skin  sample  and  you  have  a  cell  nuclear  in  blue  and  the  target  of  interest  in  red.  One  of  the challenges  within  immunohisto chemistry  and  histopathology  is  that  you  have  many  possible  protocols,  colorations.  Here  on  the  left,  it's  two  different  histological  colorations.  It  doesn't  involve  antibodies  like  I  show  you,  but  it  just  reactive  with  the  different  components  of  the  tissues.  You  see  here  for  the  MOVAT,  we  have  five  colors.  For  the  HE,  we  have  only  one  color,  but  the  intensity  depends  on  the  type  of  structure  you  are  looking  at  in  the  tissue.

On  the  right,  you  have  two  immunohistochemistry  protocol.  One  simplex,  we  called  it,  because  we  detect  only  one  target,  and  it's  a  chromogenic  here.  It's  in  brown.   On  the  top  right,  you  have  a  multiplex.  H ere  we  detect  many  components.  Here  it's  a  fourplex,   four  targets  on  the  same  slide,  and  each  is  revealed  by  different  flow  of  work.   You  have  different  color  for  each  of  the  targets.

Among  of  these  coloration  detection  possibilities,  then  you  have  a  multitude of  possible  analysis  method.  The  slides  can  be  analyzed  by  a  pathologist,  which  will  give  us  qualitative  or  semi- quantitative  data,  or  by  image  analysis,  which  will  give  us  quantitative  data.   Another  layer  of  that  is  that  you  can  have  reportable  parameters  which  are  single.  For  example,  if  you  have  a  simlplex,  you  detect  the  targets,  only  one  target,  and  you  assess  only  one  parameter  like  percentage  of  positive  cells,  for  example,  or  you  can  have  many.  For  one  target,  you  can  have  the  percentage  of  positive  cells  and  a  specific  histology  score.  Or  if  you  have  a  multiplex,  then  you  can  multiply  this  for  all  targets  in  the  multiplex.  Each  report  level  parameter  is  target- dependent.  You  can  imagine  that  we  have  a  lot  of  combination  that  we  can  have  to  access  during  our  validations.

In   Cerba Research  M ontpellier,  in  2022,  we  have  a  small  part,  like  20 %  of  our  project  related  to  animals.  We  are  studying  animal  samples.   The  other  projects  were  on  human  samples.   Among  this,  most  of  them are  four  clinical  trials  of  the  project.  That's  a  very   [inaudible 00:04:56] .  W e  have  some  others  that  are  outside  clinical  trials,  a  quarter  of  them,  and  a  small  portion,  3 %  that  are  CAP  compliant.  CAP  is  a  specific  regulation  for  US.   It is  to  know  that  before  being  used  in  a  clinical  trial,  we  should  demonstrate  that  our  protocol  that  we  developed  in  Montpellier  show  consistency  in  results  for  section  of  the  same  sample.  If  we  analyze  the  sample  at  different  type points,  for  example,  the  samples  of  patients  involved  in  the  study,  the  first  year  should  be  the  same  than  in  the  five  years  after.

On  the  different  automatons,  we  have  at  our different  sites,  and  when  the  samples  are  analyzed  by  different  operators  or  pathologists.   This  applies  a  rigorous  validation  according  to  the  health  agency,  and  this  validation  is  mainly  based  on  statistical  criterion.

The  implication  for  the  company  is  that  we  need  to  increase  the  team  members  to  support  the  increasing  number  of  projects  we  have  each  year,  and  we  need  a  normal  genus  statistical  analysis  pipeline  to  be  sure  that  we  will  give  all  our   clients  the  same  type  of  results.  Obviously,  we  need  statistical  analysis  tool,  and  it's  when  we  choose  JMP  to  support  our  validation  of  the  protocol.

Today,  I  will  show  you  only  a  part  of  what  we  are  doing  because  I  don't  have  time  to  show  you  everything.  I  chose  a  quite  simple  example.  It's  a kind of  experiment  we  do  to  validate  the  precision  of  the  protocol,  meaning  that  we  check  the  intra-run ,  which  is  called  repeatability  precision  over  three  slides.  Here  are  the  three  ones  highlighted  in  purple  in  the  same  cycle.  The  three  slides  I  run  at  the  same  time,  they  come  from  the  same  sample,  and  we  just  check  that  we  have  the  same  data.  The   inter-run,   reproducibility,  test  over  two  slides  highlighted  in  blue  in  each  cycle.  In  total,  we  have  six  slides  over  three  cycles.

For  reportable  parameters,  I  will  use  an  image  analysis   dataset,  which  is  quantitative  data  and  usually  easier  to  analyze.  We  will  have  two  reportable  parameters  for  one  target.

How  do  you  start?  First,  we  need  to  import  the  data.  I  don't  know  if  you  are  familiar   with  that.  But  in  our  case,  we  have  data  either  from  Word  documents,  so  we  use  the  Word  Import  Tool  available  on  JMP  community  website .  I  put  the  link  here  so  you  can  go  and  find  it  again.  Or  we  import  data  from  Excel  either  directly  by  opening  the  file  in  JMP  or  by  using  the  JMP  tool  in  Excel.

For  this  presentation,  just  to  be  faster,  I  create  some  script  to  help  me  to  focus  on  the  dashboard  creation  after  that,  which  will  take  more  time.  But  this  is  just  some  script  and  just  to  be  faster,  but  I  will  not  develop  into  it  then.  Here  I  will  open  a  data  table  from  Project X  here.  As  you  can  see,  it's  a  quite  simple  table.  I  have  four  columns  with  the  validation,  the  slide  ID,  which  are  internal  slide  numbers,  and  the   dataset  for  my  two  reportable  parameters.  This  data  continues  because  they  come  from  image  analysis.

Once  I  have  this,  I  will  need  to  prepare  my  data.  It's  a  most  time  consuming  part  of  analysis  data.  Again,  it's  why  I  have  a  script.  You  see  the  five  columns  where  I  did.  The  sample  to  be  able  to  correlate  each  data  to  the  same  sample,  which  is  a  part  of  the  slide  ID  we  have  internally.  I  just  get  a  formula  here  to  help  me  to  do  that.  The  slide  number,  which  are  the  last  digits  of  the  slide  ID,  and  the  slide  order,  the  1,  2,  3,  4,  5,  6,  7  for  each  sample.  Thanks  to  this  slide  ordering,  I  would  say,  I  implement  the  repeater.  The  three  first  slides  which  were  staying  in  the  same  cycle  for  repeater,  and  two  first  slides  of  each  cycle  for   reproductivity  test.

Here  I  have  all  the  information  needed  to  do  my  analysis.  I  go  back  to  my  journal,  and  we  will  want  to  do  the  dashboard  question.  I  still  have  some  steps  to  do  before  that  because  I  would  like  to  have  all  the  analysis  I  want  to  put  in  the  dashboard.  Here  are  the  two  little  table  you  see  where  we  are  required  to  analyze  the  CV  of  our  protocol  for  each  sample  for  repeatability.  I  selected  only  the  three  first  slides  thanks  to  the  local  data  filter.  The  same  for  reproducibility,  where  you  see  I  have  the  slides  from  the  reproducibility  column.

Here  are  the  data  that  I  need.  This  data  I  updated  them  in  here.  You  see  I  have  much  more  columns  now.  It's  easier  to  find  the  name  here.  I  have  the  sample  CV  for  repeatability,  for  reportable  parameter  1  and  2,  and  then  the  same  for  reproducibility  for  the  two  parameters,  and  then  I  do  the  mean  of  both  samples  for  each  of  these  columns.  Here,  all  the  data  I  will  need  to  implement  in  my  dashboard.  I  can  cross  this  table.  I  don't  need  them  anymore.

I  will  now  do  the  graphs  and  tables  that  will  really  fit  in  the  dashboard.  Again,  what  I  want  to  show  to  the  client  is  the  distribution  of  the  data  for  repeatability.  I  put  as  well  the  standard  deviation  and  the  mean.  Usually,  it's  pretty  good  here and  for  reproducibility  where  I  have  all  my  six  slides.  Then  I  would  put  a  table  with  a  CV  for  each  sample  for  repeatability  and  the  reproducibility  on  the  left  for  the  first  parameter  and  on  the  right  for  the  second  one.  The  same  outline  for  the  mean  of  the  two  samples.

These  are  the  four  part  I  want  to  show  on  my  dashboard.  I  will  show  you  how  it  looks  like.  I  want  to  obtain  something  like  that.  This  is  often  I  did  that  I  can  show  it,  the  two  graphs  and  the  two  table.  It's  what  I  would  show  you  how  to  do  now.  You  see  that  all  the  graphs  are  to  the  same  data  table,  sorry,  and  it's  much  easier  to  do  the  dashboard  after.  I  saved  as  well  all  the  scripts  so  I  can  redo  them  whenever  I  want.  I  will  create  a  new  file,  new  dashboard.  You  have  many  templates. I  usually  start  from  blank  and  just  you  have  to  put  in  what  you  want  to  see.  Sometimes  it's  a  bit  difficult  because  it's  small,  but  we  always  manage  to  find  our  way.

My  table  at  the  bottom,  you  just  drop  them  where  you  want  to  have  them.  It's  pretty  simple.  You  can  change  the  names of each  part,  so  I  will  not  do  it  just.  But  you  can  see  that  you  can  edit  all  the  parts.  You  can  run  your  script  and  then  give  you  the  dashboard.  It's  pretty  similar  to  what  I  showed  you  before.  I  have  my  two  tables  at  the  bottom  and  my  two  graphs  at  the  top  here.  I  have  inverted  the  two,  so  I  usually  prefer  to  start  with  repeat  that.  I  will  just  switch  them.  If  I  put  it  where  something  was  already,  they  just  switch.

Here  we  are.  This  is  the  layout  I  want,  so  it's  good.  After,  you  can  play  to  see  better,  more  or  less,  of  the  table,  et  cetera.  But  this  is  just  for  visual   [inaudible 00:15:00]   process.  Then,  okay,  now  we  have  dashboard,  but  it  would  be  more  interested  if  we  can  directly  go  for  the  dashboard  when  you  have  all  your  data  you  want  on  the  dashboard  and  click  and  you  have  a  dashboard.  For  that,  we  just  need  to  do  an  add- in.  It's  quite  simple.  Thanks  to  the  magic  triangle,  I  call  it,  the  red  triangle  here.  You  click  Save  Script  and  just  To  Add-I n.  Then  it  will  create  a  script  that  will  do  the  same  dashboard  again.

Let's  go  back  to  the  data  table.  I  will  close  this  one.  You  are  sure  that  the  one  that  you  will  see  is  not this  one.  Sorry,  I  shouldn't  have  closed  it  before  doing  the  dashboard.  I  will  just  use  this  to  be  faster  and  not  to  create  it  again.  Here,  if  you  click  on  the  red,  Save  Script,  To  Add -In.  Then  this  is  the  name  you  will  have  in  the  add- in  list,  but  it's  to  manage  your  add- ins,  I  would  say,  but  it's  not  the  one  that  will  figure  out  in  the  add-in  tab  in  JMP.  The  name  that  you're  in  the  add-in  tab  is  this  one.  For  today,  I  would  just  call  it  Test  so  I  know  which  one  is  this.  Save.  You  see  here,  you  have  all  the  script  used  by  JMP  to  do  this  dashboard,  and  I  will  save  it  in  our  Project X.  Here  you  see  it  take  the  name  on  the  first  tab  Dashboard  only.

I  save  it.  Here  I  have  this  both  tick  Install  after  save,  so  it  was  already  put  in  my  add-in  list.  If   the  box  was  not  ticked,  then  you  have  just  to  go  to  the  location.  You  save  your  file  and  click  on  it  and  it's  installed.  Now  I  can  close  this  dashboard .

I  have  created  my  complement already.  Now,  how  to  use  it?  I  just  went  a  bit  faster.  If  you  open  it,  it  installs.  As  I  have  it  already,  I  will  not  start  it.  It's  just  under  it.  If  you  go  to  View,  Add-ins,  sorry,  Dashboard,  and   Unregister,  it's  not  erased.  I  will  find  it  again  when  I  go  to  my  project.  Here  you  see  I  have  it.  If  I  double -click,  it  ask  me  if  I  want  to  install  it.  Sure,  I  want  to  install  it.  It's  back  here  again.  You  can  share  it.  You  just  have  to  copy  the  same  file  I  clicked  on  and  paste  it  in  a  shared  folder  or  send  it  to  a  JMP  user  colleague.   You  can  modify  it.  For  this  you  have  to  go  in  Open.  Again,  this  is  the  dashboard  but  then  the  black  click  this  time,  just  go  on  the  arrow  here  to  open  and  Open  using  Add-In  Builder.

Here  you  go  back  to  the  first  time  window  where  you  have  your  script  here,  and  you  can  either  edit  the  script  or  put  other  functions  that  I  don't  really  use,  to  be  honest.  But  you  have  many  functions.  I'm  sure  you  will  find  more  information  on  JMP  website  about  that.  This,  for  example,  will  allow  you  to  put  all  the  preparation  step  in  the  same  complement.  When  you  run,  everything  is  done  at  the  same  time.  This  is  it.

In  conclusion,  using  this  dashboard  and  add-in  functions  allow  us  to  have  reports  consistency  because  we  have  always  the  same  set  up  of  results  to  send  to  the  clients.  We  increase  the  traceability.  Thanks  as  well  for  the  use  of  the  scripts  because  we  are  sure  that  we  are  all  doing  the  same.  I t's  a  great  time  saver  because  as  you  say,  I  just  have  to  click  on  one  button  and  I  have  my  dashboard.  If  you  combine  this  with  a  precision timing.  All  the  data  preparation,  then  you  have  your  table,  you  click  on  one  button,  and  you  have  everything  done.  It's  a  great  time  saver.

It's  all  I  wanted  to  show  you  today.  I  hope  you  enjoy  it.  If  you  have  any  question,  don't  hesitate  to  reach  out  to  me  either  by  email— you  have  the  email  on  the  first  slide  here— or  through  the  JMP  community.  Thank  you.