Skip to content
Snippets Groups Projects

new laura folder

Merged Laura Rævsbæk Birch requested to merge au620747-main-patch-86964 into main
1 file
+ 32
0
Compare changes
  • Side-by-side
  • Inline
+ 80
0
from cmath import sin
from genericpath import isfile
import os
import shutil, os
def create_sourcedata_bids_folders(basepath, originalpath):
# find all folders in originalpath
participants = os.listdir(originalpath)
nSubs=len(participants)
# Create sourcedata folder
sourcepath = os.path.join(basepath, 'sourcedata')
try:
os.mkdir(sourcepath)
except OSError:
print(sourcepath + ' - folder already exists')
# Create code folder
codePath = os.path.join(basepath, 'code')
try:
os.mkdir(codePath)
except OSError:
print(codePath + ' - folder already exists')
# Create sub folders for both BIDS and sourcedata folders
sIndex = 1
for sub in participants:
subFolder = os.path.join(basepath, 'sub-0' + str(sIndex) if sIndex >= 10 else 'sub-00' + str(sIndex))
try:
os.mkdir(subFolder)
except OSError:
print(subFolder + ' - folder already exists')
# Get number of session folders for sub
nSes = len(os.listdir(sub))
for i in range(1,nSes):
sesFolder = os.path.join(subFolder, 'ses-0' + str(i) if i >= 10 else 'ses-00' + str(i))
try:
os.mkdir(sesFolder)
except OSError:
print(sesFolder + ' - folder already exists')
eegFolder = os.path.join(sesFolder, 'eeg')
try:
os.mkdir(eegFolder)
except OSError:
print(eegFolder + ' - folder already exists')
subSourceFolder = os.path.join(sourcepath, 'sub-0' + str(sIndex) if sIndex >= 10 else 'sub-00' + str(sIndex))
try:
os.mkdir(subSourceFolder)
except OSError:
print(subSourceFolder + ' - folder already exists')
sesPath = os.path.join(subSourceFolder, 'ses-0' + str(i) if i >= 10 else 'ses-00' + str(i))
try:
os.mkdir(sesPath)
except OSError:
print(subFolder + ' - folder already exists')
#copy files from original folder to sourcedata
for ses in os.listdir(sub):
sesCount = ses[4:]
for file in os.listdir(os.path.join(sub, ses, 'eeg')):
source = os.path.join(sub, ses, 'eeg', file)
session = 'ses-0' + str(sesCount)
destination = os.path.join(subSourceFolder, session, file)
# if os.path.isfile(file):
# shutil.copy(sub, sesPath)
if os.path.isfile(source):
shutil.copy(source, destination)
subFiles = os.listdir(subSourceFolder)
for file in subFiles:
filePath = os.path.join(subSourceFolder, file)
shutil.move(filePath, sesPath)
sIndex = sIndex + 1
\ No newline at end of file
Loading