# How to improve the efficiency of data import when labeling a large amount of data?

**URL:** <https://discourse.slicer.org/t/how-to-improve-the-efficiency-of-data-import-when-labeling-a-large-amount-of-data/10729>\
**Category:** Support\
**Created:** [March 18, 2020, 12:00pm UTC](https://discourse.slicer.org/t/how-to-improve-the-efficiency-of-data-import-when-labeling-a-large-amount-of-data/10729 "2020-03-18T12:00:54Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![RayCui](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/raycui/32/4517_2.png) [@RayCui](https://discourse.slicer.org/u/RayCui)\
**Post date:** [March 18, 2020, 12:00pm UTC](https://discourse.slicer.org/t/how-to-improve-the-efficiency-of-data-import-when-labeling-a-large-amount-of-data/10729/1 "2020-03-18T12:00:54Z")

</div>

When I check and modify the labeled data, I found that it took more time to import the data. Raw data and labeled data are imported in groups. I found:

1. If I import a large amount of data at once, the slicer will take a long time and take up too much memory.
2. If I import only part of the data groups at a time, I need to import it multiple times.  
In addition, when I check and modify the labeled data, I often need to switch to display different data pairs, especially when there are many members in the data group, it is very time consuming.

How should I do to improve the efficiency of data import?  
I think of a way is to write the correspondence of each group of data to csv, and then import the csv file, select each piece of data of csv to switch the data group. Is there an extension can achieve this? Can anyone give me some advice?

---

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [March 18, 2020, 1:30pm UTC](https://discourse.slicer.org/t/how-to-improve-the-efficiency-of-data-import-when-labeling-a-large-amount-of-data/10729/2 "2020-03-18T13:30:43Z")

</div>

> [@RayCui](#):
>
> If I import a large amount of data at once, the slicer will take a long time and take up too much memory.

The more data you load, the more memory will be used. If memory usage gets close the amount of physical RAM installed in your computer, operations will start to slow down by a factor of 10x-100x. If you need to visualize a lot of data sets at once then you can either install more RAM or downscale your data (e.g., using Crop Volume module).

> [@RayCui](#):
>
> I think of a way is to write the correspondence of each group of data to csv, and then import the csv file, select each piece of data of csv to switch the data group. Is there an extension can achieve this?

To review items one by one in a large data set collection, you can use [Case Iterator](https://github.com/JoostJM/SlicerCaseIterator) extension.

---

<div class="post-metadata">

**Author:** ![RayCui](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/raycui/32/4517_2.png) [@RayCui](https://discourse.slicer.org/u/RayCui)\
**Post date:** [March 19, 2020, 12:19pm UTC](https://discourse.slicer.org/t/how-to-improve-the-efficiency-of-data-import-when-labeling-a-large-amount-of-data/10729/3 "2020-03-19T12:19:44Z")

</div>

Thank you, Andras.  
The [Case Iterator](https://github.com/JoostJM/SlicerCaseIterator) extension is helpful.
