Opened 3 years ago

Closed 2 years ago

#2245 closed enhancement (done)

Shuffle manipulation treats the training and test partition separately

Reported by: mkommend Owned by: mkommend
Priority: medium Milestone: HeuristicLab 3.3.11
Component: DataPreprocessing Version: 3.3.10
Keywords: Cc:

Description

The data preprocessing view provides the functionality to shuffle the data. While doing so, the defined training and test partition are shuffled separately, which in most cases has no effect while modeling the data. Therefore, the user should be able to specify if the partitions should be shuffled separately or the whole data should be shuffled, where the later should be the default option.

Change History (10)

comment:1 Changed 3 years ago by bburlacu

r11380: Added a checkbox in the properties section of the shuffle data tab in the ManipulationView to specify whether the problem data should be shuffled as a whole or separately for each training/test range. Modified ShuffleToIndices methods accordingly. Also fixed very small typo in ManipulationContent.cs

comment:2 Changed 3 years ago by bburlacu

r11381: Forgot to commit changes to ManipulationView.cs.

comment:3 Changed 3 years ago by bburlacu

  • Status changed from new to accepted

comment:4 Changed 3 years ago by bburlacu

  • Owner changed from bburlacu to gkronber
  • Status changed from accepted to reviewing

comment:5 Changed 3 years ago by gkronber

  • Owner changed from gkronber to bburlacu
  • Status changed from reviewing to assigned

Reviewed r11380.

I'm not happy with the methods in interface IManipulationLogic.

void ShuffleWithRanges(bool shuffleRangesSeparately); 
void ShuffleWithRanges(IEnumerable<HeuristicLab.Data.IntRange> ranges);
void ShuffleWithRanges(IEnumerable<HeuristicLab.Data.IntRange> ranges, bool shuffleRangesSeparately); 

Instead I think the following would be better:

void Shuffle(); 
void ShuffleWithRanges(IEnumerable<HeuristicLab.Data.IntRange> ranges);

If reasonable, please adapt the implementation accordingly.

comment:6 Changed 2 years ago by bburlacu

r11403: The Shuffle method needs a bool parameter to be passed from the view (checkbox whether to shuffle with ranges or not). I combined the three methods into just one method void Shuffle(bool shuffleRangesSeparately).

comment:7 Changed 2 years ago by bburlacu

  • Owner changed from bburlacu to mkommend
  • Status changed from assigned to reviewing

comment:8 Changed 2 years ago by mkommend

  • Status changed from reviewing to readytorelease

comment:9 Changed 2 years ago by mkommend

Reviewed r11403.

comment:10 Changed 2 years ago by mkommend

  • Resolution set to done
  • Status changed from readytorelease to closed

r11537: Merged r11380, r11381 & r11403 into stable.

Note: See TracTickets for help on using tickets.