Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
# open the infile
if not os.path.exists(infile):
infile = infile + '.alm'
data = util.read_text_file(infile)
# create the outfile
if not filename:
filename = rcParams['filename']
# read in the templates
html = util.read_text_file(main_template or template_path('alm2html.html'))
if not table_template:
table_template = template_path(
'alm2html.table.js.html' if confidence else 'alm2html.table.html')
table = util.read_text_file(table_template)
css = util.read_text_file(template_path('alm.css'))
js = util.read_text_file(template_path('alm.js'))
# define a label function for the taxa
label = lambda x: keywords['labels'][x] if x in keywords['labels'] else x
# check for windows-compatibility
data = data.replace(os.linesep, '\n')[:-1]
# split the data into blocks
blocks = data.split('\n\n')
# retrieve the dataset
dataset = dataset or blocks[0]
# create the outstring
tmp_str = ''
if not os.path.exists(infile):
infile = infile + '.alm'
data = util.read_text_file(infile)
# create the outfile
if not filename:
filename = rcParams['filename']
# read in the templates
html = util.read_text_file(main_template or template_path('alm2html.html'))
if not table_template:
table_template = template_path(
'alm2html.table.js.html' if confidence else 'alm2html.table.html')
table = util.read_text_file(table_template)
css = util.read_text_file(template_path('alm.css'))
js = util.read_text_file(template_path('alm.js'))
# define a label function for the taxa
label = lambda x: keywords['labels'][x] if x in keywords['labels'] else x
# check for windows-compatibility
data = data.replace(os.linesep, '\n')[:-1]
# split the data into blocks
blocks = data.split('\n\n')
# retrieve the dataset
dataset = dataset or blocks[0]
# create the outstring
tmp_str = ''
"""
Function converts a PSA-file into colored html-format.
"""
util.setdefaults(
kw,
template=False,
css=False,
comment='#',
filename=infile[:-4]+'.html',
compact=True)
template = util.read_text_file(kw['template'] or template_path('psa.html'))
css = util.read_text_file(kw['css'] or template_path('psa.css'))
data = []
for line in util.read_text_file(infile, lines=True):
if not line.startswith(kw['comment']):
data.append(line)
seq_ids = []
pairs = []
taxa = []
alignments = []
del data[0]
i = 0
while i <= len(data) - 3:
try:
seq_ids.append(data[i])
datA = data[i + 1].split('\t')
A list-representation of the CSV file.
"""
# check for correct fileformat
if fileformat:
infile = filename + '.' + fileformat
else:
infile = filename
if dtype is None:
dtype = []
l = []
# open the file
infile = read_text_file(infile, lines=True, normalize="NFC")
# check for header
idx = 0 if header else -1
for i, line in enumerate(infile):
if line and (not comment or not line.startswith(comment)) and idx != i:
if strip_lines:
cells = [c.strip() for c in line.strip().split(sep)]
else:
cells = [c.strip() for c in line.split(sep)]
if not dtype:
l += [cells]
else:
l += [[f(c) for f, c in zip(dtype, cells)]]
return l
set this value to 0 and make sure to use tabstops as separators between
values in your matrix file.
comment : str (default = '#')
The comment character to be used if your file contains additional
information which should be ignored.
Returns
-------
data : tuple
A tuple consisting of a list of taxa and a matrix.
"""
if '\n' in filename:
lines = [f for f in filename.split('\n') if f.strip()]
else:
lines = read_text_file(filename, normalize="NFC", lines=True)
taxa, matrix = [], []
for line in lines[1:]:
if not line.startswith(comment):
if taxlen > 0:
taxa.append(line[:taxlen].strip())
matrix.append([float(val) for val in
re.split(r'\s+', line[taxlen + 1:].strip())])
else:
splits = line.split('\t')
taxa.append(splits[0])
matrix.append([float(val.strip()) for val in splits[1:]])
return taxa, matrix
def _read_string(name):
# normalize stuff
# TODO: this is potentially dangerous and it is important to decide whether
# TODO: switching to NFD might not be a better choice
return util.read_text_file(
os.path.join(file_path, name), normalize='NFC').replace('\n', '')
txt += 'IdGloss = ' + json.dumps(id2gloss) + ';\n'
txt += 'FILE = "' + kw['outfile'] + '.tsv";\n'
tpath = partial(util.data_path, 'templates')
tname = 'jcov.{0}.html'.format(
'remote' if 'remote' in kw['export'] else 'direct')
content = util.read_text_file(tpath(tname))
util.write_text_file(
kw['outfile'] + '.html',
content.format(
CORRS=txt,
JCOV=util.read_text_file(tpath('jcov.js')),
STYLE=util.read_text_file(tpath('jcov.css')),
VENDOR=util.read_text_file(tpath('jcov.vendor.js')),
DIGHL=util.read_text_file(tpath('jcov.dighl.js'))))
pointer[idx + 1] = [tmp, tmp]
else:
del pointer[idx]
if idx == 0:
break
else:
tmp_strings = []
for line in sorted(tmp):
tmp_strings += [item_sep.join(line)]
out_string += entry_start + entry_sep.join(tmp_strings) + entry_close
tmp = pointer[idx - 1][0]
del pointer[idx]
if fileformat == 'tex':
out_string = out_string.replace('_', r'\_')
tmpl = util.read_text_file(template) if template else '{0}'
_write_file(keywords['filename'], tmpl.format(out_string), fileformat)