How to use all_results method in Lemoncheesecake

Best Python code snippet using lemoncheesecake

solution2.py

Source:solution2.py Github

copy

Full Screen

1import sys, numpy, scipy.ndimage2from collections import defaultdict, deque3import itertools4import copy5import re6file_name = "Input.txt"7size = 12 # 3 or 12 sqrt num_tiles8tile_size = 109'''10with open(file_name, "r") as fp:11 lines = fp.readlines()12lines = [x.strip() for x in lines]13line = lines[0].strip()14toks = line.split(",")15nums = [int(n) for n in toks]16'''17'''18with open(file_name, "r") as fp:19 lines = fp.readlines()20lines = [x.strip() for x in lines]21'''22with open(file_name, "r") as fp:23 lines = fp.readlines()24lines = [x.strip() for x in lines]25tiles = {}26tiles_data = {}27index = 028# hash of sides and reversed sides: ids29tile_sides = defaultdict(list)30def R(s):31 return ''.join(reversed(s))32while index < len(lines):33 tile_no = int(lines[index][5:9])34 index += 135 tile_data = []36 for _ in range(10):37 data = ['0' if x == '.' else '1' for x in lines[index]]38 tile_data.append(data)39 index += 140 index += 141 tiles_data[tile_no] = tile_data42 # Initially left to right, top to bottom43 l = ''44 for i in range(tile_size):45 l += tile_data[i][0]46 r = ''47 for i in range(tile_size):48 r += tile_data[i][-1]49 t = ''50 for i in range(tile_size):51 t += tile_data[0][i]52 b = ''53 for i in range(tile_size):54 b += tile_data[-1][i]55 tiles[tile_no] = (l, t, r, b)56 tile_sides[l].append((tile_no, (l, t, r, b), '0'))57 tile_sides[R(l)].append((tile_no, (R(l), b, R(r), t), 'h'))58 tile_sides[r].append((tile_no, (r, R(t), l, R(b)), 'v'))59 tile_sides[R(r)].append((tile_no, (R(r), R(b), R(l), R(t)), '180'))60 tile_sides[t].append((tile_no, (t, l, b, r), '90h'))61 tile_sides[R(t)].append((tile_no, (R(t), r, R(b), l), '90'))62 tile_sides[b].append((tile_no, (b, R(l), t, R(r)), '270'))63 tile_sides[R(b)].append((tile_no, (R(b), R(r), R(t), R(l)), '270h'))64print(tiles)65print(tiles_data)66print(len(tiles))67print(len(tile_sides))68def find_runs(tile_data, tile_key, tile_dict, run_size, so_far, results):69 # print(f"Level {run_size} {tile_data} {so_far}")70 if run_size == 1:71 results.append(so_far)72 # print(f"RETURN {so_far}")73 return74 # print(f"find_runs {tile_data} rs = {run_size}")75 l1,t1,r1,b1 = tile_data76 # for k,t in tile_dict.items()77 # l2,t2,r2,b2 = t78 for opts in tile_sides[r1]:79 key2 = opts[0]80 if key2 == tile_key:81 continue82 if key2 not in tile_dict:83 continue84 l2,t2,r2,b2 = opts[1]85 if r1 == l2: # r == l86 # r -> l87 op = opts[2]88 run = (l2, t2, r2, b2) #89 tile_copy = dict(tile_dict)90 del tile_copy[key2]91 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)92 '''93 if r1 == l2: # r == l94 # r -> l95 op = '0'96 run = (l2, t2, r2, b2) #97 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)98 if r1 == R(l2): # flip horiz around x axis99 op = 'h'100 run = (R(l2), b2, R(r2), t2) #101 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)102 if r1 == r2: # flipv around y axis103 op = 'v'104 run = (r2, R(t2), l2, R(b2)) #105 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)106 if r1 == R(r2): # rot 180107 op = '180'108 run = (R(r2), R(b2), R(l2), R(t2)) #109 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)110 if r1 == t2: # rot90+fliph111 op = '90h'112 run = (t2, l2, b2, r2)113 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)114 if r1 == R(t2): # rot90115 op = '90'116 run = (R(t2), r2, R(b2), l2)117 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)118 if r1 == b2: # rot 270119 op = '270'120 run = (b2, R(l2), t2, R(r2)) #121 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)122 if r1 == R(b2): # rot 270 + fliph123 op = '270h'124 run = (R(b2), R(l2), R(t2), R(r2))125 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run, op)], results)126 '''127 return128def find_vertical(run, run_size, all_results, results):129 if len(run) == run_size:130 results.append(run)131 return132 if run == [3]:133 print("3")134 pass135 for next_row_index in range(len(all_results)):136 if run == [3] and next_row_index == 19:137 print("19")138 if next_row_index in run:139 # Already in current run_size140 continue141 used_keys = set()142 for run_index in run:143 for res in all_results[run_index]:144 used_keys.add(res[0])145 next_row_keys = set()146 for res in all_results[next_row_index]:147 next_row_keys.add(res[0])148 if not used_keys.isdisjoint(next_row_keys):149 # common keys150 continue151 # check if stitched152 ok = True153 for col in range(size):154 if all_results[run[-1]][col][1][3] != all_results[next_row_index][col][1][1]:155 ok = False156 break157 if not ok:158 continue159 # Recurse160 find_vertical(run + [next_row_index], run_size, all_results, results)161 return162all_results = []163for k,v in tiles.items():164 l,t,r,b = v165 tiles_copy = copy.deepcopy(tiles)166 del tiles_copy[k]167 results = []168 # print(f"k= '{k}'")169 run = (l, t, r, b)170 op = '0'171 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) #172 for res in results:173 all_results.append(res)174 results = []175 run = (R(l), b, R(r), t) #176 op = 'h'177 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) #178 for res in results:179 all_results.append(res)180 results = []181 run = (r, R(t), l, R(b)) #182 op = 'v'183 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) #184 for res in results:185 all_results.append(res)186 results = []187 run = (R(r), R(b), R(l), R(t)) #188 op = '180'189 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) #190 for res in results:191 all_results.append(res)192 results = []193 run = (t, l, b, r)194 op = '90h'195 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) #196 for res in results:197 all_results.append(res)198 results = []199 run = (R(t), r, R(b), l)200 op = '90'201 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) ##202 for res in results:203 all_results.append(res)204 results = []205 run = (b, R(l), t, R(r)) #206 op = '270'207 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) ##208 for res in results:209 all_results.append(res)210 results = []211 run = (R(b), R(r), R(t), R(l))212 op = '270h'213 find_runs(run, k, tiles_copy, size, [(k, run, op)], results) #214 for res in results:215 all_results.append(res)216#print(f"ALL ({len(all_results)}) = ")217#for i in range(len(all_results)):218# print(f" {i}: {all_results[i]}")219#print(f"len = {len(all_results)}")220print(f"ALL_RESULTS=")221for _index,ar in enumerate(all_results):222 for _ar in ar:223 print(f" {_index}: {_ar[0]} {_ar[2]} ", end='')224 print('')225print('')226print(f"Got {len(all_results)} all_results")227tile_keys = set([k for k,_ in tiles_data.items()])228print(f"tile_keys = {tile_keys}")229results = []230for i in range(len(all_results)):231 find_vertical([i], size, all_results, results)232if results:233 r0 = results[0]234 good_squares = [all_results[x] for x in r0]235 print(f"FOUND {len(results)} RESULTS = {results}")236 # print(f"good_squares {good_squares}")237print("Solutions:")238for res in results:239 for index in res:240 for r in all_results[index]:241 print(f"{r[0]} ", end='')242 print('')243 print('')244for i in range(size):245 print(f"{i}: {good_squares[i]}")246solution = good_squares[0][0][0] * good_squares[0][-1][0] * good_squares[-1][0][0] * good_squares[-1][-1][0]247print(f"Solution1 = {solution}")248def apply_op(data, op):249 data = numpy.array(data)250 if op == '0':251 pass252 elif op == 'h':253 data = numpy.flip(data, 0)254 elif op == 'v':255 data = numpy.flip(data, 1)256 elif op == '180':257 data = numpy.rot90(data, 2)258 elif op == '90h':259 data = numpy.rot90(data, 1)260 data = numpy.flip(data, 0)261 elif op == '90':262 data = numpy.rot90(data, 1)263 elif op == '270':264 data = numpy.rot90(data, 3)265 elif op == '270h':266 data = numpy.rot90(data, 3)267 data = numpy.flip(data, 0)268 else:269 0/0270 return data271# #####272'''273big_image = numpy.zeros((size*tile_size, size*tile_size), int)274for row in range(size):275 for y in range(0, tile_size):276 for col in range(size):277 tile_data = tiles_data[good_squares[row][col][0]]278 tdata = []279 for _r in tile_data:280 tdata.append([0 if _x == '0' else 1 for _x in _r])281 op = good_squares[row][col][2]282 if good_squares[row][col][0] == 1951:283 print(f"key = 1951 tdata=\n{tdata} col={col} y={y}")284 tdata = apply_op(tdata, op)285 if good_squares[row][col][0] == 1951:286 print(f"op = {op} tdata=\n{tdata}")287 for x in range(0, tile_size):288 big_image[row*tile_size + y][col*(tile_size) + (x)] = tdata[y][x]289print(f"BIG_IMAGE = \n{big_image}")290'''291# #####292# Create stiched image293image = numpy.zeros((size*(tile_size-2), size*(tile_size-2)), int)294for row in range(size):295 for y in range(1, tile_size-1):296 for col in range(size):297 tile_data = tiles_data[good_squares[row][col][0]]298 tdata = []299 for _r in tile_data:300 tdata.append([0 if _x == '0' else 1 for _x in _r])301 op = good_squares[row][col][2]302 tdata = apply_op(tdata, op)303 for x in range(1, tile_size-1):304 image[row*(tile_size-2) + y-1][col*(tile_size-2) + (x-1)] = tdata[y][x]305print(f"IMAGE = \n{image}")306'''307image = []308for row in range(size):309 for y in range(1, tile_size-1):310 row_data = [0 for _ in range(size * (tile_size-2))]311 for col in range(size):312 tile_data = tiles_data[good_squares[row][col][0]]313 tdata = []314 for _r in tile_data:315 tdata.append([0 if _x == '0' else 1 for _x in _r])316 op = good_squares[row][col][2]317 tdata = apply_op(tdata, op)318 for x in range(1, tile_size-1):319 row_data[col*(tile_size-2) + (x-1)] = tdata[y][x]320 image.append(row_data)321'''322'''323print("Image=")324for row in image:325 for c in row:326 # print('.' if c == 0 else '#', end='')327 print(c, end='')328 print('')329print('')330'''331array = image332print(f"ARRAY = \n{array}")333kernel = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0],334 [1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1],335 [0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0]]336kernel = numpy.array(kernel)337kernel_count = 15338print(f"Kernel = \n{kernel}")339'''340 #341# ## ## ###342 # # # # # #343'''344def find_max_matches(convolve, kernel_count):345 max_vals = 0346 max = 0347 for row in convolve:348 for col in row:349 if col == kernel_count:350 max_vals += 1351 if col > max:352 max = col353 print(f"max_vals={max_vals} max = {max}")354 return max_vals355answer = 0356while True:357 arr = array # 0358 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)359 answer = find_max_matches(convolve, kernel_count)360 if answer:361 break362 arr = numpy.flip(array, 0) # h363 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)364 answer = find_max_matches(convolve, kernel_count)365 if answer:366 break367 arr = numpy.flip(array, 1) # v368 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)369 answer = find_max_matches(convolve, kernel_count)370 if answer:371 break372 arr = numpy.rot90(array, 2) # 180373 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)374 answer = find_max_matches(convolve, kernel_count)375 if answer:376 break377 arr = numpy.rot90(array) # 90h378 arr = numpy.flip(arr, 0)379 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)380 answer = find_max_matches(convolve, kernel_count)381 if answer:382 break383 arr = numpy.rot90(array, 1) # 90384 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)385 answer = find_max_matches(convolve, kernel_count)386 if answer:387 break388 arr = numpy.rot90(array, 3) # 270389 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)390 answer = find_max_matches(convolve, kernel_count)391 if answer:392 break393 arr = numpy.rot90(array, 3) # 270h394 arr = numpy.flip(arr, 0)395 convolve = scipy.ndimage.convolve(arr, kernel, None, 'constant', 0)396 answer = find_max_matches(convolve, kernel_count)397 if answer:398 break399unique, counts = numpy.unique(array, return_counts=True)400num1 = dict(zip(unique, counts))[1]401answer = num1 - kernel_count*answer...

Full Screen

Full Screen

solution.py

Source:solution.py Github

copy

Full Screen

1from collections import defaultdict, deque2import itertools3import copy4import re5file_name = "Input.txt"6size = 12 # 3 or 12 sqrt num_tiles7tile_size = 108'''9with open(file_name, "r") as fp:10 lines = fp.readlines()11lines = [x.strip() for x in lines]12line = lines[0].strip()13toks = line.split(",")14nums = [int(n) for n in toks]15'''16'''17with open(file_name, "r") as fp:18 lines = fp.readlines()19lines = [x.strip() for x in lines]20'''21with open(file_name, "r") as fp:22 lines = fp.readlines()23lines = [x.strip() for x in lines]24tiles = {}25tiles_data = {}26index = 027# hash of sides and reversed sides: ids28tile_sides = defaultdict(list)29def R(s):30 return ''.join(reversed(s))31while index < len(lines):32 tile_no = int(lines[index][5:9])33 index += 134 tile_data = []35 n = 036 for i in range(10):37 data = ['0' if x == '.' else '1' for x in lines[index]]38 tile_data.append(data)39 index += 140 index += 141 tiles_data[tile_no] = tile_data42 # Initially left to right, top to bottom43 l = ''44 for i in range(tile_size):45 l += tile_data[i][0]46 r = ''47 for i in range(tile_size):48 r += tile_data[i][-1]49 t = ''50 for i in range(tile_size):51 t += tile_data[0][i]52 b = ''53 for i in range(tile_size):54 b += tile_data[-1][i]55 tiles[tile_no] = (l, t, r, b)56 tile_sides[l].append((tile_no, (l, t, r, b)))57 tile_sides[R(l)].append((tile_no, (R(l), b, R(r), t)))58 tile_sides[r].append((tile_no, (r, R(t), l, R(b))))59 tile_sides[R(r)].append((tile_no, (R(r), R(b), R(l), R(t))))60 tile_sides[t].append((tile_no, (t, l, b, r)))61 tile_sides[R(t)].append((tile_no, (R(t), r, R(b), l)))62 tile_sides[b].append((tile_no, (b, R(l), t, R(r))))63 tile_sides[R(b)].append((tile_no, (R(b), R(l), R(t), R(r))))64print(tiles)65print(tiles_data)66print(len(tiles))67print(len(tile_sides))68def find_runs(tile_data, tile_key, tile_dict, run_size, so_far, results):69 # print(f"Level {run_size} {tile_data} {so_far}")70 if run_size == 1:71 results.append(so_far)72 # print(f"RETURN {so_far}")73 return74 # print(f"find_runs {tile_data} rs = {run_size}")75 l1,t1,r1,b1 = tile_data76 # for k,t in tile_dict.items()77 # l2,t2,r2,b2 = t78 for opts in tile_sides[r1]:79 key2 = opts[0]80 if key2 == tile_key:81 continue82 l2,t2,r2,b2 = opts[1]83 tile_copy = dict(tile_dict)84 del tile_copy[key2]85 if r1 == l2: # r == l86 # r -> l87 run = (l2, t2, r2, b2) #88 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)89 if r1 == R(l2): # flip horiz90 run = (R(l2), b2, R(r2), t2) #91 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)92 if r1 == r2: # flipv93 run = (r2, R(t2), l2, R(b2)) #94 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)95 if r1 == R(r2): # rot 18096 run = (R(r2), R(b2), R(l2), R(t2)) #97 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)98 if r1 == t2: # rot270+fliph99 run = (t2, l2, b2, r2)100 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)101 if r1 == R(t2): # rot270102 run = (R(t2), r2, R(b2), l2)103 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)104 if r1 == b2: # rot 90105 run = (b2, R(l2), t2, R(r2)) #106 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)107 if r1 == R(b2): # rot 90 + fliph108 run = (R(b2), R(l2), R(t2), R(r2))109 find_runs(run, key2, tile_copy, run_size-1, so_far + [(key2, run)], results)110 return111def find_vertical(run, run_size, all_results, results):112 if len(run) == run_size:113 results.append(run)114 return115 for next_row_index in range(len(all_results)):116 if next_row_index in run:117 # Already in current run_size118 continue119 used_keys = set()120 for run_index in run:121 for res in all_results[run_index]:122 for tup in res:123 used_keys.add(res[0])124 next_row_keys = set()125 for res in all_results[next_row_index]:126 for tup in res:127 next_row_keys.add(res[0])128 if not used_keys.isdisjoint(next_row_keys):129 # common keys130 continue131 # check if stitched132 ok = True133 for col in range(size):134 if all_results[run[-1]][col][1][3] != all_results[next_row_index][col][1][1]:135 ok = False136 if not ok:137 break138 if not ok:139 continue140 # Recurse141 find_vertical(run + [next_row_index], run_size, all_results, results)142 return143all_results = []144for k,v in tiles.items():145 l,t,r,b = v146 tiles_copy = dict(tiles)147 del tiles_copy[k]148 results = []149 # print(f"k= '{k}'")150 run = (l, t, r, b)151 find_runs(run, k, tiles_copy, size, [(k, run)], results) #152 for res in results:153 all_results.append(res)154 results = []155 run = (R(l), b, R(r), t) #156 find_runs(run, k, tiles_copy, size, [(k, run)], results) #157 for res in results:158 all_results.append(res)159 results = []160 run = (r, R(t), l, R(b)) #161 find_runs(run, k, tiles_copy, size, [(k, run)], results) #162 for res in results:163 all_results.append(res)164 results = []165 run = (R(r), R(b), R(l), R(t)) #166 find_runs(run, k, tiles_copy, size, [(k, run)], results) #167 for res in results:168 all_results.append(res)169 results = []170 run = (t, l, b, r)171 find_runs(run, k, tiles_copy, size, [(k, run)], results) #172 for res in results:173 all_results.append(res)174 results = []175 run = (R(t), r, R(b), l)176 find_runs(run, k, tiles_copy, size, [(k, run)], results) ##177 for res in results:178 all_results.append(res)179 results = []180 run = (b, R(l), t, R(r)) #181 find_runs(run, k, tiles_copy, size, [(k, run)], results) ##182 for res in results:183 all_results.append(res)184 results = []185 run = (R(b), R(l), R(t), R(r))186 find_runs(run, k, tiles_copy, size, [(k, run)], results) #187 for res in results:188 all_results.append(res)189#print(f"ALL ({len(all_results)}) = ")190#for i in range(len(all_results)):191# print(f" {i}: {all_results[i]}")192#print(f"len = {len(all_results)}")193print(f"ALL_RESULTS=")194for ar in all_results:195 print(f" {ar}")196print(f"Got {len(all_results)} all_results")197tile_keys = set([k for k,_ in tiles_data.items()])198print(f"tile_keys = {tile_keys}")199used_keys = set()200for run_index in [0, 2]:201 for res in all_results[run_index]:202 for tup in res:203 used_keys.add(res[0])204print(used_keys)205results = []206for i in range(len(all_results)):207 find_vertical([i], size, all_results, results)208 if results:209 r0 = results[0]210 good_squares = [all_results[x] for x in r0]211 print(f"found {results}")212 print(f"good_squares {good_squares}")213 break214for i in range(size):215 print(f"{i}: {good_squares[i]}")216solution = good_squares[0][0][0] * good_squares[0][-1][0] * good_squares[-1][0][0] * good_squares[-1][-1][0]217print(f"Solution1 = {solution}")218'''219tile_queue = deque(all_results)220while True:221 work_queue = deque()222'''223'''224solution = None225good_squares = None226for squares in itertools.permutations(all_results, size):227 ok = True228 # print(f"Square = {squares}")229 if len(squares) != size:230 print("ERRR")231 0/0232 for s in squares:233 if len(s) != size:234 print("ERRRRRR")235 0/0236 for col in range(size):237 for row in range(size-1):238 if squares[row][col][1][3] != squares[row+1][col][1][1]:239 ok = False240 break241 if not ok:242 break243 # check no repeats244 ids = set([squares[row][col][0] for col in range(size) for row in range(size)])245 if len(ids) != size * size:246 ok = False247 if ok:248 # print(f"GOOD SQUARE: {squares}\n\n")249 good_squares = squares250 break251for i in range(size):252 print(f"{i}: {good_squares[i]}")253result = good_squares[0][0][0] * good_squares[0][-1][0] * good_squares[-1][0][0] * good_squares[-1][-1][0]254print(f"Solution1 = {result}")...

Full Screen

Full Screen

Snakefile

Source:Snakefile Github

copy

Full Screen

1import yaml2from snakemake.utils import min_version3min_version("6.0")4configfile: "config/main_config.yaml"5with open("config/dataset_config.yaml", "r") as f:6 dataset_cfg = yaml.safe_load(f)7all_results = list(dataset_cfg.keys())8def create_cfg(dataset_name):9 cfg = config.copy()10 cfg.update(dataset_cfg[dataset_name])11 return cfg12target_files = expand(13 "all_results/{dataset}/figures/{viz}",14 dataset=all_results,15 viz=["pca.svg", "spearman_heatmap.svg"]16)17rule all:18 input:19 target_files,20# Separate Snakefile for each dataset21include: "all_results/Chemerin/Snakefile"22include: "all_results/Blueberry/Snakefile"23include: "all_results/MALL/Snakefile"24include: "all_results/Exercise/Snakefile"25include: "all_results/BISCUIT/Snakefile"26include: "all_results/Office/Snakefile"27include: "all_results/art_scher/Snakefile"28include: "all_results/asd_son/Snakefile"29include: "all_results/cdi_schubert/Snakefile"30include: "all_results/cdi_vincent/Snakefile"31include: "all_results/crc_baxter/Snakefile"32include: "all_results/crc_zeller/Snakefile"33include: "all_results/edd_singh/Snakefile"34include: "all_results/hiv_dinh/Snakefile"35include: "all_results/hiv_lozupone/Snakefile"36include: "all_results/hiv_noguerajulian/Snakefile"37include: "all_results/ibd_gevers/Snakefile"38include: "all_results/ibd_papa/Snakefile"39include: "all_results/ob_goodrich/Snakefile"40include: "all_results/ob_ross/Snakefile"41include: "all_results/ob_turnbaugh/Snakefile"42include: "all_results/ob_zhu/Snakefile"43include: "all_results/par_scheperjans/Snakefile"44include: "all_results/t1d_alkanani/Snakefile"45include: "all_results/t1d_mejialeon/Snakefile"46include: "all_results/GWMC_ASIA_NA/Snakefile"47include: "all_results/GWMC_HOT_COLD/Snakefile"48include: "all_results/sw_sed_detender/Snakefile"49include: "all_results/sw_plastic_frere/Snakefile"50include: "all_results/sed_plastic_hoellein/Snakefile"51include: "all_results/wood_plastic_kesy/Snakefile"52include: "all_results/seston_plastic_mccormick/Snakefile"53include: "all_results/glass_plastic_oberbeckmann/Snakefile"54include: "all_results/sed_plastic_rosato/Snakefile"55include: "all_results/ArcticTransects/Snakefile"56include: "all_results/ArcticFireSoils/Snakefile"57include: "all_results/ArcticFreshwaters/Snakefile"...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Lemoncheesecake automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful