# Question about splitting an edf instance

**URL:** <https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434>\
**Category:** Support & Discussions\
**Created:** [August 25, 2023, 1:54am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434 "2023-08-25T01:54:10Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![PhD-GOAT](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/phd-goat/32/1326_2.png) [@PhD-GOAT](https://mne.discourse.group/u/PhD-GOAT)\
**Post date:** [August 25, 2023, 1:54am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/1 "2023-08-25T01:54:10Z")

</div>

I’m going to do a power spectrum analysis.

How do I split the rawEDF instance loaded from the mne to see band power every 30 second epoch?

code like

`raw[0:3000]`

---

<div class="post-metadata">

**Author:** ![richard](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/richard/32/15_2.png) [@richard](https://mne.discourse.group/u/richard)\
**Post date:** [August 25, 2023, 6:52am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/2 "2023-08-25T06:52:26Z")

</div>

Take a look at [`make_fixed_length_epochs()`](https://mne.tools/stable/generated/mne.make_fixed_length_epochs.html).

Richard

---

<div class="post-metadata">

**Author:** ![PhD-GOAT](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/phd-goat/32/1326_2.png) [@PhD-GOAT](https://mne.discourse.group/u/PhD-GOAT)\
**Post date:** [August 25, 2023, 7:16am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/3 "2023-08-25T07:16:57Z")

</div>

Thanks. I have an additional question. To use the mne, load the edf file first. Then select the channel. By the way, since the instances are different in this process, I need to convert to numpy or mne.io.BaseRaw to apply to other functions, but if I want to do 30 seconds epoch, what should I do?

---

<div class="post-metadata">

**Author:** ![richard](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/richard/32/15_2.png) [@richard](https://mne.discourse.group/u/richard)\
**Post date:** [August 25, 2023, 7:52am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/4 "2023-08-25T07:52:59Z")

</div>

You can just pass the BaseRaw instance to `make_fixed_length_epochs()`.

---

<div class="post-metadata">

**Author:** ![PhD-GOAT](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/phd-goat/32/1326_2.png) [@PhD-GOAT](https://mne.discourse.group/u/PhD-GOAT)\
**Post date:** [August 25, 2023, 8:56am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/5 "2023-08-25T08:56:06Z")

</div>

No, I mean the opposite. Either make it BaseRaw or numpy.

---

<div class="post-metadata">

**Author:** ![richard](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/richard/32/15_2.png) [@richard](https://mne.discourse.group/u/richard)\
**Post date:** [August 25, 2023, 9:23am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/6 "2023-08-25T09:23:31Z")

</div>

I really don’t know what you’re asking for. Please take the time to thoroughly explain what exactly you wish to do.

---

<div class="post-metadata">

**Author:** ![PhD-GOAT](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/phd-goat/32/1326_2.png) [@PhD-GOAT](https://mne.discourse.group/u/PhD-GOAT)\
**Post date:** [August 25, 2023, 9:54am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/7 "2023-08-25T09:54:06Z")

</div>

What I want to do is very simple. The edf file loads the entire epoch in the mne. However, for partial analysis, it must be split into 30 seconds epoch. It is necessary to convert it into a numpy array or BaseRaw instance.So what I’m asking is what to do with the Epoch function.

---

<div class="post-metadata">

**Author:** ![richard](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/richard/32/15_2.png) [@richard](https://mne.discourse.group/u/richard)\
**Post date:** [August 25, 2023, 10:09am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/8 "2023-08-25T10:09:24Z")

</div>

If you read a raw EDF file, you already have a Raw object …

---

<div class="post-metadata">

**Author:** ![PhD-GOAT](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/phd-goat/32/1326_2.png) [@PhD-GOAT](https://mne.discourse.group/u/PhD-GOAT)\
**Post date:** [August 25, 2023, 10:27am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/9 "2023-08-25T10:27:25Z")

</div>

That’s right. So how do I deal with getting “the raw” to a numpy array to use a different API to analyze it by epoch?

---

<div class="post-metadata">

**Author:** ![richard](https://yyz2.discourse-cdn.com/free1/user_avatar/mne.discourse.group/richard/32/15_2.png) [@richard](https://mne.discourse.group/u/richard)\
**Post date:** [August 25, 2023, 10:29am UTC](https://mne.discourse.group/t/question-about-splitting-an-edf-instance/7434/10 "2023-08-25T10:29:40Z")

</div>

Simply use `make_fixed_length_epochs()` and then the `get_data()` method of the resulting epochs.
