gwaslab 3.4.36__py3-none-any.whl → 3.4.38__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of gwaslab might be problematic. Click here for more details.

Files changed (42) hide show
  1. gwaslab/__init__.py +1 -1
  2. gwaslab/data/formatbook.json +722 -721
  3. gwaslab/g_Log.py +8 -0
  4. gwaslab/g_Sumstats.py +80 -178
  5. gwaslab/g_SumstatsPair.py +6 -2
  6. gwaslab/g_Sumstats_summary.py +3 -3
  7. gwaslab/g_meta.py +13 -3
  8. gwaslab/g_version.py +2 -2
  9. gwaslab/hm_casting.py +29 -15
  10. gwaslab/hm_harmonize_sumstats.py +312 -159
  11. gwaslab/hm_rsid_to_chrpos.py +1 -1
  12. gwaslab/io_preformat_input.py +46 -37
  13. gwaslab/io_to_formats.py +428 -295
  14. gwaslab/qc_check_datatype.py +15 -1
  15. gwaslab/qc_fix_sumstats.py +956 -719
  16. gwaslab/util_ex_calculate_ldmatrix.py +29 -11
  17. gwaslab/util_ex_gwascatalog.py +1 -1
  18. gwaslab/util_ex_ldproxyfinder.py +1 -1
  19. gwaslab/util_ex_process_h5.py +26 -17
  20. gwaslab/util_ex_process_ref.py +3 -3
  21. gwaslab/util_ex_run_coloc.py +26 -4
  22. gwaslab/util_in_convert_h2.py +1 -1
  23. gwaslab/util_in_fill_data.py +44 -5
  24. gwaslab/util_in_filter_value.py +122 -34
  25. gwaslab/util_in_get_density.py +2 -2
  26. gwaslab/util_in_get_sig.py +41 -9
  27. gwaslab/viz_aux_quickfix.py +26 -21
  28. gwaslab/viz_aux_reposition_text.py +7 -4
  29. gwaslab/viz_aux_save_figure.py +6 -5
  30. gwaslab/viz_plot_compare_af.py +5 -5
  31. gwaslab/viz_plot_compare_effect.py +22 -5
  32. gwaslab/viz_plot_miamiplot2.py +28 -20
  33. gwaslab/viz_plot_mqqplot.py +214 -98
  34. gwaslab/viz_plot_qqplot.py +11 -8
  35. gwaslab/viz_plot_regionalplot.py +16 -9
  36. gwaslab/viz_plot_trumpetplot.py +15 -6
  37. {gwaslab-3.4.36.dist-info → gwaslab-3.4.38.dist-info}/METADATA +3 -3
  38. gwaslab-3.4.38.dist-info/RECORD +72 -0
  39. gwaslab-3.4.36.dist-info/RECORD +0 -72
  40. {gwaslab-3.4.36.dist-info → gwaslab-3.4.38.dist-info}/LICENSE +0 -0
  41. {gwaslab-3.4.36.dist-info → gwaslab-3.4.38.dist-info}/WHEEL +0 -0
  42. {gwaslab-3.4.36.dist-info → gwaslab-3.4.38.dist-info}/top_level.txt +0 -0
@@ -45,7 +45,7 @@ def _plot_qq(
45
45
 
46
46
  # QQ plot #########################################################################################################
47
47
  # ax2 qqplot
48
- if verbose:log.write("Start to create QQ plot with "+str(len(sumstats))+" variants:")
48
+ log.write("Start to create QQ plot with "+str(len(sumstats))+" variants:",verbose=verbose )
49
49
 
50
50
  # plotting qq plots using processed data after cut and skip
51
51
 
@@ -59,6 +59,7 @@ def _plot_qq(
59
59
  upper_bound_p = np.power(10.0, -expected_min_mlog10p)
60
60
 
61
61
  if stratified is False:
62
+ log.write(" -Plotting all variants...",verbose=verbose)
62
63
  # sort x,y for qq plot
63
64
  # high to low
64
65
  observed = p_toplot.sort_values(ascending=False)
@@ -68,13 +69,13 @@ def _plot_qq(
68
69
 
69
70
  expected_all = -np.log10(np.linspace(minit,upper_bound_p,len(p_toplot_raw)))[:len(observed)]
70
71
 
71
- if verbose:log.write("Expected range of P: (0,{})".format(upper_bound_p))
72
+ log.write(" -Expected range of P: (0,{})".format(upper_bound_p),verbose=verbose)
72
73
  #p_toplot = sumstats["scaled_P"]
73
74
  ax2.scatter(expected_all,observed,s=marker_size[1],color=colors[0],**qq_scatter_args)
74
75
 
75
76
  else:
76
77
  # stratified qq plot
77
-
78
+ log.write(" -Plotting variants stratified by MAF...",verbose=verbose)
78
79
  observed = p_toplot.sort_values(ascending=False)
79
80
  expected_all = -np.log10(np.linspace(minit,upper_bound_p,len(p_toplot_raw)))[:len(observed)]
80
81
 
@@ -115,15 +116,15 @@ def _plot_qq(
115
116
 
116
117
  if expected_min_mlog10p!=0:
117
118
  level = 1 - np.power(10.0,-np.nanmedian(expected_all))
118
- if verbose: log.write(" -Level for calculating lambda GC : {}".format(1 - level))
119
+ log.write(" -Level for calculating lambda GC : {}".format(1 - level),verbose=verbose)
119
120
 
120
- if verbose and not include_chrXYMT : log.write(" -Excluding chrX,Y, MT from calculation of lambda GC.")
121
+ if verbose and not include_chrXYMT : log.write(" -Excluding chrX,Y, MT from calculation of lambda GC.",verbose=verbose)
121
122
  lambdagc = lambdaGC(p_toplot_raw,
122
123
  mode="MLOG10P",
123
124
  level=level,
124
125
  include_chrXYMT=include_chrXYMT,
125
126
  log=log,
126
- verbose=True)
127
+ verbose=verbose)
127
128
 
128
129
  # annotate lambda gc to qq plot
129
130
  ax2.text(0.10, 1.03,"$\\lambda_{GC}$ = "+"{:.4f}".format(lambdagc),
@@ -147,7 +148,9 @@ def _plot_qq(
147
148
  font_family=font_family,
148
149
  ylabels=ylabels,
149
150
  ytick3=ytick3,
150
- ylabels_converted=ylabels_converted
151
+ ylabels_converted=ylabels_converted,
152
+ log=log,
153
+ verbose=verbose
151
154
  )
152
155
 
153
156
  #if cut == 0:
@@ -181,7 +184,7 @@ def _plot_qq(
181
184
  if qtitle:
182
185
  ax2.set_title(qtitle,fontsize=title_fontsize,pad=10,family=font_family)
183
186
 
184
- if verbose: log.write("Finished creating QQ plot successfully!")
187
+ log.write("Finished creating QQ plot successfully!",verbose=verbose)
185
188
 
186
189
  # Creating QQ plot Finished #############################################################################################
187
190
  return ax2
@@ -64,6 +64,7 @@ def _plot_regional(
64
64
  region_recombination = True,
65
65
  region_protein_coding=True,
66
66
  region_flank_factor = 0.05,
67
+ track_font_family="Arial",
67
68
  taf=[4,0,0.95,1,1],
68
69
  # track_n, track_n_offset,font_ratio,exon_ratio,text_offset
69
70
  tabix=None,
@@ -104,21 +105,25 @@ def _plot_regional(
104
105
 
105
106
  if (vcf_path is not None) and region_ld_legend:
106
107
  if region_ref_second is None:
107
- ax1 = _add_ld_legend(sumstats=sumstats,
108
+ ax1, cbar = _add_ld_legend(sumstats=sumstats,
108
109
  ax1=ax1,
109
110
  region_ld_threshold=region_ld_threshold,
110
111
  region_ld_colors=region_ld_colors)
111
112
  else:
112
- ax1 = _add_ld_legend(sumstats=sumstats,
113
+
114
+ ax1, cbar1 = _add_ld_legend(sumstats=sumstats,
113
115
  ax1=ax1,
114
116
  region_ld_threshold=region_ld_threshold,
115
117
  region_ld_colors=region_ld_colors1,
116
118
  position=1)
117
- ax1 = _add_ld_legend(sumstats=sumstats,
119
+ ax1, cbar2 = _add_ld_legend(sumstats=sumstats,
118
120
  ax1=ax1,
119
121
  region_ld_threshold=region_ld_threshold,
120
122
  region_ld_colors=region_ld_colors2,
121
123
  position=2)
124
+ cbar = [cbar1, cbar2]
125
+ else:
126
+ cbar=None
122
127
  if region_title is not None:
123
128
  ax1 = _add_region_title(region_title, ax1=ax1,region_title_args=region_title_args )
124
129
  ## recombinnation rate ##################################################
@@ -176,6 +181,7 @@ def _plot_regional(
176
181
  gene_track_start_i=gene_track_start_i,
177
182
  gtf_chr_dict=gtf_chr_dict,
178
183
  gtf_gene_name=gtf_gene_name,
184
+ track_font_family=track_font_family,
179
185
  taf=taf,
180
186
  build=build,
181
187
  verbose=verbose,
@@ -231,7 +237,7 @@ def _plot_regional(
231
237
  avoid_points=False,
232
238
  lim =1000)
233
239
 
234
- return ax1, ax3, lead_snp_i, lead_snp_i2
240
+ return ax1, ax3, ax4, cbar, lead_snp_i, lead_snp_i2
235
241
 
236
242
  # + ###########################################################################################################################################################################
237
243
  def _get_lead_id(sumstats=None, region_ref=None, log=None):
@@ -336,7 +342,7 @@ def _add_ld_legend(sumstats, ax1, region_ld_threshold, region_ld_colors,position
336
342
  facecolor='white',
337
343
  zorder=999998)
338
344
  ax1.add_patch(rect)
339
- return ax1
345
+ return ax1, cbar
340
346
 
341
347
  # -############################################################################################################################################################################
342
348
  def _plot_recombination_rate(sumstats,pos, region, ax1, rr_path, rr_chr_dict, rr_header_dict, build,rr_lim,rr_ylabel=True):
@@ -385,6 +391,7 @@ def _plot_gene_track(
385
391
  region_ld_colors2,
386
392
  gene_track_start_i,
387
393
  gtf_chr_dict,gtf_gene_name,
394
+ track_font_family,
388
395
  taf,
389
396
  build,
390
397
  verbose=True,
@@ -452,15 +459,15 @@ def _plot_gene_track(
452
459
  if row["end"] >= region[2]:
453
460
  #right side
454
461
  texts_to_adjust_right.append(ax3.text(x=gene_track_start_i+region[2],
455
- y=row["stack"]*2+taf[4],s=gene_anno,ha="right",va="center",color="black",style='italic', size=font_size_in_points))
462
+ y=row["stack"]*2+taf[4],s=gene_anno,ha="right",va="center",color="black",style='italic', size=font_size_in_points,family=track_font_family))
456
463
 
457
464
  elif row["start"] <= region[1] :
458
465
  #left side
459
466
  texts_to_adjust_left.append(ax3.text(x=gene_track_start_i+region[1],
460
- y=row["stack"]*2+taf[4],s=gene_anno,ha="left",va="center",color="black",style='italic', size=font_size_in_points))
467
+ y=row["stack"]*2+taf[4],s=gene_anno,ha="left",va="center",color="black",style='italic', size=font_size_in_points,family=track_font_family))
461
468
  else:
462
469
  texts_to_adjust_middle.append(ax3.text(x=(gene_track_start_i+row["start"]+gene_track_start_i+row["end"])/2,
463
- y=row["stack"]*2+taf[4],s=gene_anno,ha="center",va="center",color="black",style='italic',size=font_size_in_points))
470
+ y=row["stack"]*2+taf[4],s=gene_anno,ha="center",va="center",color="black",style='italic',size=font_size_in_points,family=track_font_family))
464
471
 
465
472
  # plot exons
466
473
  for index,row in exons.iterrows():
@@ -535,7 +542,7 @@ def process_vcf(sumstats, vcf_path, region,region_ref, region_ref_second, log, v
535
542
  # no position match
536
543
  return None
537
544
  if verbose: log.write(" -Matching variants using POS, NEA, EA ...")
538
- sumstats["REFINDEX"] = sumstats.loc[:,[pos,nea,ea]].apply(lambda x: match_varaint(x),axis=1)
545
+ sumstats["REFINDEX"] = sumstats[[pos,nea,ea]].apply(lambda x: match_varaint(x),axis=1)
539
546
  #############################################################################################
540
547
  #sumstats["REFINDEX"] = sumstats[pos].apply(lambda x: np.where(ref_genotype["variants/POS"] == x )[0][0] if np.any(ref_genotype["variants/POS"] == x) else None)
541
548
 
@@ -66,7 +66,7 @@ def plottrumpet(mysumstats,
66
66
  anno_source = "ensembl",
67
67
  anno_max_iter=100,
68
68
  arm_scale=1,
69
- repel_force=0.05,
69
+ repel_force=0.01,
70
70
  ylabel="Effect size",
71
71
  xlabel="Minor allele frequency",
72
72
  xticks = None,
@@ -99,7 +99,7 @@ def plottrumpet(mysumstats,
99
99
  xticks = [0,0.01,0.05,0.1,0.2,0.5]
100
100
  xticklabels = xticks
101
101
  if figargs is None:
102
- figargs={"figsize":(10,15)}
102
+ figargs={"figsize":(10,8)}
103
103
  if scatter_args is None:
104
104
  scatter_args ={}
105
105
  if hue is not None:
@@ -307,6 +307,7 @@ def plottrumpet(mysumstats,
307
307
 
308
308
  if ylim is not None:
309
309
  ax.set_ylim(ylim)
310
+
310
311
  if yticks is not None:
311
312
  ax.set_yticks(yticks, yticklabels)
312
313
 
@@ -337,8 +338,8 @@ def plottrumpet(mysumstats,
337
338
  texts_d=[]
338
339
 
339
340
  if len(variants_toanno)>0:
340
-
341
- maxy = max(variants_toanno[beta].abs().max(),1.5)
341
+ maxy = variants_toanno[beta].abs().max()
342
+ #maxy = max(variants_toanno[beta].abs().max(),1.5)
342
343
  variants_toanno["ADJUSTED_i"] = np.nan
343
344
  y_span = 0.5
344
345
 
@@ -348,6 +349,9 @@ def plottrumpet(mysumstats,
348
349
  variants_toanno = variants_toanno.sort_values(by=maf, key= np.abs, ascending = True)
349
350
 
350
351
  if anno_style == "expand":
352
+
353
+ min_factor=None
354
+
351
355
  if len(variants_toanno.loc[variants_toanno[beta]>0, "ADJUSTED_i"])>1:
352
356
  variants_toanno.loc[variants_toanno[beta]>0, "ADJUSTED_i"] = adjust_text_position(variants_toanno.loc[variants_toanno[beta]>0,maf].values.copy(),
353
357
  y_span,
@@ -355,7 +359,7 @@ def plottrumpet(mysumstats,
355
359
  max_iter=anno_max_iter,
356
360
  log=log,
357
361
  amode=xscale,
358
- verbose=verbose)
362
+ verbose=verbose,min_factor=min_factor)
359
363
 
360
364
  if len(variants_toanno.loc[variants_toanno[beta]<0, "ADJUSTED_i"])>1:
361
365
  variants_toanno.loc[variants_toanno[beta]<0, "ADJUSTED_i"] = adjust_text_position(variants_toanno.loc[variants_toanno[beta]<0,maf].values.copy(),
@@ -364,10 +368,12 @@ def plottrumpet(mysumstats,
364
368
  max_iter=anno_max_iter,
365
369
  log=log,
366
370
  amode=xscale,
367
- verbose=verbose)
371
+ verbose=verbose,min_factor=min_factor)
368
372
 
369
373
 
370
374
  for variants_toanno_half in [variants_toanno.loc[variants_toanno[beta]<0,:], variants_toanno.loc[variants_toanno[beta]>0,:]]:
375
+ if len(variants_toanno_half)<1:
376
+ continue
371
377
  last_pos = min(variants_toanno_half[maf])/2
372
378
  for index, row in variants_toanno_half.iterrows():
373
379
 
@@ -395,6 +401,7 @@ def plottrumpet(mysumstats,
395
401
 
396
402
  if anno_style=="tight":
397
403
  texts_d.append(ax.text(row[maf], row[beta], row[anno]))
404
+
398
405
  if anno_style=="tight":
399
406
  adjust_text(texts_d,
400
407
  autoalign =True,
@@ -404,6 +411,8 @@ def plottrumpet(mysumstats,
404
411
  expand_points=(0.5,0.5),
405
412
  force_objects=(0.5,0.5),
406
413
  ax=ax)
414
+
415
+
407
416
  ############ Annotation ##################################################################################################
408
417
  if mode=="q":
409
418
  save_figure(fig, save, keyword="trumpet_q",save_args=save_args, log=log, verbose=verbose)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: gwaslab
3
- Version: 3.4.36
3
+ Version: 3.4.38
4
4
  Summary: A collection of handy tools for GWAS SumStats
5
5
  Author-email: Yunye <yunye@gwaslab.com>
6
6
  Project-URL: Homepage, https://cloufield.github.io/gwaslab/
@@ -8,13 +8,13 @@ Project-URL: Github, https://github.com/Cloufield/gwaslab
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Classifier: License :: OSI Approved :: MIT License
10
10
  Classifier: Operating System :: OS Independent
11
- Requires-Python: <=3.10,>=3.8
11
+ Requires-Python: <=3.10,>=3.9
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
14
  Requires-Dist: pandas !=1.5,>=1.3
15
15
  Requires-Dist: numpy >=1.21.2
16
16
  Requires-Dist: matplotlib !=3.7.2,>=3.5
17
- Requires-Dist: seaborn >=0.11.1
17
+ Requires-Dist: seaborn >=0.12
18
18
  Requires-Dist: scipy >=1.12
19
19
  Requires-Dist: pySAM <0.20,>=0.18.1
20
20
  Requires-Dist: Biopython >=1.79
@@ -0,0 +1,72 @@
1
+ gwaslab/__init__.py,sha256=dFnrh4L620F5JirsSF98SmkuligA-fybIGdBF6r9Ims,2386
2
+ gwaslab/bd_common_data.py,sha256=-YlytsRU3YnwI23EV0U_pFWZ0_0yL23_RwTfBajEuPw,11844
3
+ gwaslab/bd_config.py,sha256=TP-r-DPhJD3XnRYZbw9bQHXaDIkiRgK8bG9HCt-UaLc,580
4
+ gwaslab/bd_download.py,sha256=Nh09FP_d5kLsAyEF-WOYd7tty-ypvJv0PSTEO4JB2cc,15636
5
+ gwaslab/bd_get_hapmap3.py,sha256=poqV3Ko56xhRFKdSK0ROwDQ71b27-9bMOQ0XO36To5c,2034
6
+ gwaslab/g_Log.py,sha256=T9nt1yLM62h17zbWGCo6k8hqs-Gubq4F6jXipIRq9Rk,1079
7
+ gwaslab/g_Phenotypes.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
+ gwaslab/g_Sumstats.py,sha256=qX90zHIsVZI_8-9htpRq6lXWwz-twCnY4arnuatuiI8,28806
9
+ gwaslab/g_SumstatsPair.py,sha256=2_VYz58bLn1YIPvfr5J2CR_b4-DTXe9T3zZzYR-KsAo,6226
10
+ gwaslab/g_SumstatsT.py,sha256=r3fAN-LsUIJhi7mhLH_4NBwHCOawVkbWULKY1vbmdZY,2113
11
+ gwaslab/g_Sumstats_summary.py,sha256=FECvvFXJVKaCX5dggBvvk9YvJ6AbdbcLfjltysX7wEE,6380
12
+ gwaslab/g_meta.py,sha256=htWlgURWclm9R6UqFcX1a93WN27xny7lGUeyJZOtszQ,2583
13
+ gwaslab/g_vchange_status.py,sha256=eX0jdIb6Spa07ZdpWNqUWqdVBWS0fuH2yrt4PDi3Res,1746
14
+ gwaslab/g_version.py,sha256=SHIRseFVyyaxmK0jkGCnOLhWFFrwS1dxyvKNJpnH5bA,1688
15
+ gwaslab/hm_casting.py,sha256=6XDWyMfAUmjQ_xvO2wlfCnkKW6rO2JalJW2EUvYe9ek,11248
16
+ gwaslab/hm_harmonize_sumstats.py,sha256=cm2bi1H0O971mKz-NkRUJ9FlXNMHBN7RCfgOir3CeqU,47130
17
+ gwaslab/hm_rsid_to_chrpos.py,sha256=ODWREO0jPN0RAfNzL5fRzSRANfhiksOvUVPuEsFZQqA,6552
18
+ gwaslab/io_preformat_input.py,sha256=aU-Ci5nAa5ya6h8sG6I98uziCEX1hFRa5pb8Qhhz1zA,20072
19
+ gwaslab/io_read_ldsc.py,sha256=mro3Vc3dQs6dQ2zsUaUYHOqJGIhJaNzxPeE3zsfO7dA,8659
20
+ gwaslab/io_read_tabular.py,sha256=_gI0EA4CDecTPHTDp6hW2PesagYHHbBQvI_tW8U3Tc8,2366
21
+ gwaslab/io_to_formats.py,sha256=cvnRoZd1o1__FTx5b8tVmZOf1BV1vhO_k09Jkm8yhRA,26221
22
+ gwaslab/io_to_pickle.py,sha256=XmxhV5-38ED8aEyPYzsskv7HrxCyge9tHJ2F21QA8Ms,1824
23
+ gwaslab/qc_check_datatype.py,sha256=WiZM5fa4skdFwAz8B6ZBRMatOjyHdlXhjpiPr29QtJE,3379
24
+ gwaslab/qc_fix_sumstats.py,sha256=DdI1j94OERblqvOI1ZLEj2fqeLCGK8JhVDBP84KSx9U,86557
25
+ gwaslab/run_script.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
+ gwaslab/util_ex_calculate_ldmatrix.py,sha256=SVXjP7TkFmMNLyL89E6Q2RHT3bEgk47fcdWneL12xbw,13090
27
+ gwaslab/util_ex_calculate_prs.py,sha256=uOcMRWujEYMYGuO-qGe3okQJYizXGvqDcomXlzLvln8,9049
28
+ gwaslab/util_ex_gwascatalog.py,sha256=PVjJog1y6XLKY8kbCHZQRYjwZG7s236D9AgKhaJDOUY,7583
29
+ gwaslab/util_ex_ldproxyfinder.py,sha256=MzeA1DKwwlQKCmv_7CM5zE1VDCDYdOnAmATv-svOu8c,9397
30
+ gwaslab/util_ex_plink_filter.py,sha256=Ak09-tEIS_uq1OtiCmcDCXcEjzQHCEfp44AKkhgoOzY,1669
31
+ gwaslab/util_ex_process_h5.py,sha256=1QzcQurnwedYFiF4ZaEOv0Wl41rBEUjS7yVcMWNIslE,2741
32
+ gwaslab/util_ex_process_ref.py,sha256=Y_nyWzhW1mOGSWvaTuNA3dJ8_QTbu0ETGnH73NOHI5g,16464
33
+ gwaslab/util_ex_run_2samplemr.py,sha256=AvhpR_ihR052LBabR1wfEaBqfwCs88VW8Q2ijdKMfUs,9040
34
+ gwaslab/util_ex_run_clumping.py,sha256=fE-PHeYjl8I08ycwCbJrQjF3wixMDYKNe4EASupEMpo,6816
35
+ gwaslab/util_ex_run_coloc.py,sha256=TXk0zZz4KmVV_nm5RDnXycUBu0TA3xfmTRdwJb7g_ic,6198
36
+ gwaslab/util_ex_run_susie.py,sha256=fxs5eCxA48j62dZlgTAPk8FMEIH7NK9cQxoy_s8RbdY,4252
37
+ gwaslab/util_in_calculate_gc.py,sha256=HqyBBDorWoBlmD1i4K2Vr4vTTPqg5YLM8ktdvCpKe_c,2176
38
+ gwaslab/util_in_calculate_power.py,sha256=Kk46GHKDcub6l1XTT-ZT5hrPmR8EUa_tS_LIPbLRvbU,10112
39
+ gwaslab/util_in_convert_h2.py,sha256=Qfe74L9x6ijzrOM0tcPNDkAZ3yqEmzkOiuSIiigTxgg,6468
40
+ gwaslab/util_in_correct_winnerscurse.py,sha256=o7CjUwLp4B_60yrntV76ESNaoPcl-HPOzSw9cYWzpW4,2050
41
+ gwaslab/util_in_fill_data.py,sha256=3WPgR7ZOCrODLkKl-3UuRTPHIp8iRfEbgQFlQyhdaDo,13881
42
+ gwaslab/util_in_filter_value.py,sha256=aIwOgJgjchIJhXq7Gl5tQYppiv0RwP_gyr7GTcw9YNo,18129
43
+ gwaslab/util_in_get_density.py,sha256=isfdOTXnjC95meQZuQIo6fURlkABpsh3Y1rrUPhejvA,3893
44
+ gwaslab/util_in_get_sig.py,sha256=6UWE7ornAm-PFG3_eRpf2VuyrBgk4VElKLN7OBNayrw,21308
45
+ gwaslab/viz_aux_annotate_plot.py,sha256=BKwvyXydKjgFo2w2ZCwxtxRLGT-g5e6eayhkSje3Lfc,32124
46
+ gwaslab/viz_aux_quickfix.py,sha256=vHq4p8wntcimow2Wh75cptLiorAATGoSBcJQ47UOL74,18261
47
+ gwaslab/viz_aux_reposition_text.py,sha256=tFs4fK4E4TQdzWfxQIy5QO6d44x-N0PaOIHxZDCzt0o,4308
48
+ gwaslab/viz_aux_save_figure.py,sha256=edW0GUPcyG4MIIF55OqO45h087OnbVLbXMG35TqjqA8,2218
49
+ gwaslab/viz_plot_compare_af.py,sha256=VpH45FGIRoRCz1X3nXCXaD6yshvqI1EuwgbK4m0iAhM,5505
50
+ gwaslab/viz_plot_compare_effect.py,sha256=iUlp6tUS7OSlffgGyUIH4tPXQB_BK19OQZSo7xhToRA,49817
51
+ gwaslab/viz_plot_forestplot.py,sha256=xgOnefh737CgdQxu5naVyRNBX1NQXPFKzf51fbh6afs,6771
52
+ gwaslab/viz_plot_miamiplot.py,sha256=rCFEp7VNuVqeBBG3WRkmFAtFklbF79BvIQQYiSY70VY,31238
53
+ gwaslab/viz_plot_miamiplot2.py,sha256=CZojciiQqVu_36Fiwzny0HubHoLVUef7MOGQjJOlFrY,15852
54
+ gwaslab/viz_plot_mqqplot.py,sha256=OUOZmy4w9xxbNnHEVwuCNrpDfF7BRkPr6llFl3mU31g,61222
55
+ gwaslab/viz_plot_qqplot.py,sha256=vsXiY1wZ1TAr6tlCg0fma0RfghDb-4SGXhwqdO89QyQ,7259
56
+ gwaslab/viz_plot_regionalplot.py,sha256=LmSLShO_WJMxdUeNA7BIKAgclCzcUbLz1VTHgr6qPbc,37434
57
+ gwaslab/viz_plot_rg_heatmap.py,sha256=nibSCUnY_ZskCpJx7ppOgyqOuXBaWy6r7c_1McrQmZ0,13877
58
+ gwaslab/viz_plot_stackedregional.py,sha256=Ne7ncUN4iwmYKaDR8ZXeAFYPw29o_M2JzAnZRkyeMA0,9894
59
+ gwaslab/viz_plot_trumpetplot.py,sha256=-W6-qvpg_bdPsE5GOnwwJ4WRY9dLSu4XCdm1m3SpiEo,37237
60
+ gwaslab/data/formatbook.json,sha256=N2nJs80HH98Rsu9FxaSvIQO9J5yIV97WEtAKjRqYwiY,38207
61
+ gwaslab/data/reference.json,sha256=k8AvvgDsuLxzv-NCJHWvTUZ5q_DLAFxs1Th3jtL313k,11441
62
+ gwaslab/data/chrx_par/chrx_par_hg19.bed.gz,sha256=LocZg_ozhZjQiIpgWCO4EYCW9xgkEKpRy1m-YdIpzQs,83
63
+ gwaslab/data/chrx_par/chrx_par_hg38.bed.gz,sha256=VFW11MnQVC-Iu-ZGvUDcEhVpb-HVRsVTg-W-GNJyxP4,82
64
+ gwaslab/data/hapmap3_SNPs/hapmap3_db150_hg19.snplist.gz,sha256=qD9RsC5S2h6l-OdpW09DWXHIi2kcPebctMnhxt8mzfU,10282886
65
+ gwaslab/data/hapmap3_SNPs/hapmap3_db151_hg38.snplist.gz,sha256=Y8ZT2FIAhbhlgCJdE9qQVAiwnV_fcsPt72usBa7RSBM,10225828
66
+ gwaslab/data/high_ld/high_ld_hla_hg19.bed.gz,sha256=R7IkssKu0L4WwkU9SrS84xCMdrkkKL0gnTNO_OKbG0Y,219
67
+ gwaslab/data/high_ld/high_ld_hla_hg38.bed.gz,sha256=76CIU0pibDJ72Y6UY-TbIKE9gEPwTELAaIbCXyjm80Q,470
68
+ gwaslab-3.4.38.dist-info/LICENSE,sha256=GhLOU_1UDEKeOacYhsRN_m9u-eIuVTazSndZPeNcTZA,1066
69
+ gwaslab-3.4.38.dist-info/METADATA,sha256=Y8WW-j1IjW151zNScfgaQq2HQ46TnPS-wLonkGtmP14,6804
70
+ gwaslab-3.4.38.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
71
+ gwaslab-3.4.38.dist-info/top_level.txt,sha256=PyY6hWtrALpv2MAN3kjkIAzJNmmBTH5a2risz9KwH08,8
72
+ gwaslab-3.4.38.dist-info/RECORD,,
@@ -1,72 +0,0 @@
1
- gwaslab/__init__.py,sha256=vD_LWA3kzEkPtrFT5EnmqMiBWN6xTERIMDJbN00p2oE,2382
2
- gwaslab/bd_common_data.py,sha256=-YlytsRU3YnwI23EV0U_pFWZ0_0yL23_RwTfBajEuPw,11844
3
- gwaslab/bd_config.py,sha256=TP-r-DPhJD3XnRYZbw9bQHXaDIkiRgK8bG9HCt-UaLc,580
4
- gwaslab/bd_download.py,sha256=Nh09FP_d5kLsAyEF-WOYd7tty-ypvJv0PSTEO4JB2cc,15636
5
- gwaslab/bd_get_hapmap3.py,sha256=poqV3Ko56xhRFKdSK0ROwDQ71b27-9bMOQ0XO36To5c,2034
6
- gwaslab/g_Log.py,sha256=ICCzc2iP-toIRhXSnRufMqJrB6MtstJXk5qmC2yK6pY,821
7
- gwaslab/g_Phenotypes.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- gwaslab/g_Sumstats.py,sha256=W8XAP6C1nxs4uFQWi8hOx1qPG03hkV4wFVIwfNvKtNc,32004
9
- gwaslab/g_SumstatsPair.py,sha256=eFFcL0foi7KJ2t7yf98WIyUMv-Kl6IrvSdv3FtqZmXs,5971
10
- gwaslab/g_SumstatsT.py,sha256=r3fAN-LsUIJhi7mhLH_4NBwHCOawVkbWULKY1vbmdZY,2113
11
- gwaslab/g_Sumstats_summary.py,sha256=Q69702tABxTVk6QIbqQ4k6eSujhXr_MVVQ5saOdEhlk,6367
12
- gwaslab/g_meta.py,sha256=KT5Es_xeCijxZ35fb6qyJ1LiBQ8WIuo5eEjGy048qVE,2193
13
- gwaslab/g_vchange_status.py,sha256=eX0jdIb6Spa07ZdpWNqUWqdVBWS0fuH2yrt4PDi3Res,1746
14
- gwaslab/g_version.py,sha256=hr_Dl0fwgypHQHtSjlnr-IyGSYg_cFrq7ftAZbYGMOA,1688
15
- gwaslab/hm_casting.py,sha256=w8Qz0IlFwmn4_uUc7aOccWZCfY_e19ZZr-iYgCu-SnQ,10350
16
- gwaslab/hm_harmonize_sumstats.py,sha256=yPY_CpQzjd_YkwW_jXGePHkqeDcs7Kzl_eMpE5bnxKI,40859
17
- gwaslab/hm_rsid_to_chrpos.py,sha256=-pKhY654zS4uULW7FP4yGHNy3e9Wc2ujc1VLBaoUO5A,6564
18
- gwaslab/io_preformat_input.py,sha256=3dkwgo-eyKpML5U8cmphvQEqWKuome8sKcjpF1JBq7w,19486
19
- gwaslab/io_read_ldsc.py,sha256=mro3Vc3dQs6dQ2zsUaUYHOqJGIhJaNzxPeE3zsfO7dA,8659
20
- gwaslab/io_read_tabular.py,sha256=_gI0EA4CDecTPHTDp6hW2PesagYHHbBQvI_tW8U3Tc8,2366
21
- gwaslab/io_to_formats.py,sha256=tayh5qoxe9tn_g3mHTbfT3Jkz7kTo8BOPjpMtoMlfAY,21111
22
- gwaslab/io_to_pickle.py,sha256=XmxhV5-38ED8aEyPYzsskv7HrxCyge9tHJ2F21QA8Ms,1824
23
- gwaslab/qc_check_datatype.py,sha256=mD0_wfgQsDRx8LFRQ_xaJ9zxDm9A6ZaNDxVOFn-SllU,2737
24
- gwaslab/qc_fix_sumstats.py,sha256=VdMxXd9IXCRxKzhW1lZXJUaPC77F83glXbw_clwoK7o,80794
25
- gwaslab/run_script.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
- gwaslab/util_ex_calculate_ldmatrix.py,sha256=hjFOZqGfQixTjMSxgVbB-JQwP0QcQMKfbhs-dsLT5Qw,12112
27
- gwaslab/util_ex_calculate_prs.py,sha256=uOcMRWujEYMYGuO-qGe3okQJYizXGvqDcomXlzLvln8,9049
28
- gwaslab/util_ex_gwascatalog.py,sha256=Y3CiBu03yrJ4SDubl3mOq62fIkbr7bZ1lwbhWEVWKmA,7576
29
- gwaslab/util_ex_ldproxyfinder.py,sha256=C705kiw673DaijrccJ8ifO2IXR9RHP8B7Jfp0_-7UWo,9398
30
- gwaslab/util_ex_plink_filter.py,sha256=Ak09-tEIS_uq1OtiCmcDCXcEjzQHCEfp44AKkhgoOzY,1669
31
- gwaslab/util_ex_process_h5.py,sha256=Xcdr3sqZ1RpVUdjUKp0nCp50lIuIFL4cojQYhYI6D5w,2267
32
- gwaslab/util_ex_process_ref.py,sha256=vB5tDnlpnStLJq1QgxwhJQ1wRlQ8hy-yI5smm2wUjaA,16445
33
- gwaslab/util_ex_run_2samplemr.py,sha256=AvhpR_ihR052LBabR1wfEaBqfwCs88VW8Q2ijdKMfUs,9040
34
- gwaslab/util_ex_run_clumping.py,sha256=fE-PHeYjl8I08ycwCbJrQjF3wixMDYKNe4EASupEMpo,6816
35
- gwaslab/util_ex_run_coloc.py,sha256=Fx-bYWQyZVqvpJWUA97B8STBdoj462YXrC9-Zf9BMRM,5117
36
- gwaslab/util_ex_run_susie.py,sha256=fxs5eCxA48j62dZlgTAPk8FMEIH7NK9cQxoy_s8RbdY,4252
37
- gwaslab/util_in_calculate_gc.py,sha256=HqyBBDorWoBlmD1i4K2Vr4vTTPqg5YLM8ktdvCpKe_c,2176
38
- gwaslab/util_in_calculate_power.py,sha256=Kk46GHKDcub6l1XTT-ZT5hrPmR8EUa_tS_LIPbLRvbU,10112
39
- gwaslab/util_in_convert_h2.py,sha256=azqGs9whhhukVDFruAwTobor4-LnGHWIOrhK_avRnWs,6468
40
- gwaslab/util_in_correct_winnerscurse.py,sha256=o7CjUwLp4B_60yrntV76ESNaoPcl-HPOzSw9cYWzpW4,2050
41
- gwaslab/util_in_fill_data.py,sha256=5J8zt2-wuzL_ehC2JKg2IO-RcQ2eE8yS9X3R6tjsRf4,12873
42
- gwaslab/util_in_filter_value.py,sha256=rF2Nv1H-dxJZIIvw0r1tCB2xAFXt75qbpNJOpnEVffw,14647
43
- gwaslab/util_in_get_density.py,sha256=n4GFhuqyJ4HBepHJeMXVsddGRweFBaBQNueMg3hs4D8,3905
44
- gwaslab/util_in_get_sig.py,sha256=hrZrLb50h2V-PtPXkwJ2F_jc1piMJ2wJqWTqSq9cnEg,19805
45
- gwaslab/viz_aux_annotate_plot.py,sha256=BKwvyXydKjgFo2w2ZCwxtxRLGT-g5e6eayhkSje3Lfc,32124
46
- gwaslab/viz_aux_quickfix.py,sha256=hrrLADC9h1J7SCL1KDUYf-8zGrhXRHMvrwARSYpNExw,17906
47
- gwaslab/viz_aux_reposition_text.py,sha256=N0jMQSAnFPFWwx9mUFTcVtntdA56I_3vB332jtpezU4,4233
48
- gwaslab/viz_aux_save_figure.py,sha256=KfpYuSNxYv0EvcoR5n2AWjnGnJzFrYfyoGfJd71NYMQ,2083
49
- gwaslab/viz_plot_compare_af.py,sha256=vVypmnF-l6JzXyi5HPYFr-GM-OmNQGvip8oTCBvvHsk,5532
50
- gwaslab/viz_plot_compare_effect.py,sha256=LVRPRpbwrlxEvJPDauKTgPy4zZss3RylnLBOoqdTzEM,49019
51
- gwaslab/viz_plot_forestplot.py,sha256=xgOnefh737CgdQxu5naVyRNBX1NQXPFKzf51fbh6afs,6771
52
- gwaslab/viz_plot_miamiplot.py,sha256=rCFEp7VNuVqeBBG3WRkmFAtFklbF79BvIQQYiSY70VY,31238
53
- gwaslab/viz_plot_miamiplot2.py,sha256=aJcA5eEY44VuGMZMBKM6aPE1D_D6w2O2Jmw5QwUoyik,15371
54
- gwaslab/viz_plot_mqqplot.py,sha256=PHZ_f1MPg5aqwTyBDcaT6xpNLzkWqUaNb9efqLx0tiE,55775
55
- gwaslab/viz_plot_qqplot.py,sha256=XVnNbX5oXk2yvXT4uSuGtWW1fbr_FzAlWNjRW_bWmyU,7012
56
- gwaslab/viz_plot_regionalplot.py,sha256=rIaX99Drq3kCTyahthbkpek3Tf0UpFXLfpIGX_iAh70,37122
57
- gwaslab/viz_plot_rg_heatmap.py,sha256=nibSCUnY_ZskCpJx7ppOgyqOuXBaWy6r7c_1McrQmZ0,13877
58
- gwaslab/viz_plot_stackedregional.py,sha256=Ne7ncUN4iwmYKaDR8ZXeAFYPw29o_M2JzAnZRkyeMA0,9894
59
- gwaslab/viz_plot_trumpetplot.py,sha256=YAcLDgqPr9JK0vKo_ZDtfKgkhHpQVOxeg2UnbQ2HsA8,37002
60
- gwaslab/data/formatbook.json,sha256=oZSIk4-TX1_ODFwArhAeGB4f3N_c5HNOqQ9R4NceLL0,38181
61
- gwaslab/data/reference.json,sha256=k8AvvgDsuLxzv-NCJHWvTUZ5q_DLAFxs1Th3jtL313k,11441
62
- gwaslab/data/chrx_par/chrx_par_hg19.bed.gz,sha256=LocZg_ozhZjQiIpgWCO4EYCW9xgkEKpRy1m-YdIpzQs,83
63
- gwaslab/data/chrx_par/chrx_par_hg38.bed.gz,sha256=VFW11MnQVC-Iu-ZGvUDcEhVpb-HVRsVTg-W-GNJyxP4,82
64
- gwaslab/data/hapmap3_SNPs/hapmap3_db150_hg19.snplist.gz,sha256=qD9RsC5S2h6l-OdpW09DWXHIi2kcPebctMnhxt8mzfU,10282886
65
- gwaslab/data/hapmap3_SNPs/hapmap3_db151_hg38.snplist.gz,sha256=Y8ZT2FIAhbhlgCJdE9qQVAiwnV_fcsPt72usBa7RSBM,10225828
66
- gwaslab/data/high_ld/high_ld_hla_hg19.bed.gz,sha256=R7IkssKu0L4WwkU9SrS84xCMdrkkKL0gnTNO_OKbG0Y,219
67
- gwaslab/data/high_ld/high_ld_hla_hg38.bed.gz,sha256=76CIU0pibDJ72Y6UY-TbIKE9gEPwTELAaIbCXyjm80Q,470
68
- gwaslab-3.4.36.dist-info/LICENSE,sha256=GhLOU_1UDEKeOacYhsRN_m9u-eIuVTazSndZPeNcTZA,1066
69
- gwaslab-3.4.36.dist-info/METADATA,sha256=j5hCOz5Mas0ZHjMla_nMOJJxysnkkqiv3FSclqR0Z34,6806
70
- gwaslab-3.4.36.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
71
- gwaslab-3.4.36.dist-info/top_level.txt,sha256=PyY6hWtrALpv2MAN3kjkIAzJNmmBTH5a2risz9KwH08,8
72
- gwaslab-3.4.36.dist-info/RECORD,,