gsMap 1.62__py3-none-any.whl → 1.64__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.
- gsMap/GNN_VAE/adjacency_matrix.py +1 -1
- gsMap/GNN_VAE/model.py +5 -5
- gsMap/GNN_VAE/train.py +1 -1
- gsMap/__init__.py +1 -1
- gsMap/cauchy_combination_test.py +14 -36
- gsMap/config.py +473 -404
- gsMap/diagnosis.py +273 -0
- gsMap/find_latent_representation.py +22 -86
- gsMap/format_sumstats.py +79 -82
- gsMap/generate_ldscore.py +145 -78
- gsMap/latent_to_gene.py +65 -104
- gsMap/main.py +1 -9
- gsMap/report.py +160 -0
- gsMap/run_all_mode.py +195 -0
- gsMap/spatial_ldsc_multiple_sumstats.py +188 -113
- gsMap/templates/report_template.html +198 -0
- gsMap/utils/__init__.py +0 -0
- gsMap/{generate_r2_matrix.py → utils/generate_r2_matrix.py} +2 -10
- gsMap/{make_annotations.py → utils/make_annotations.py} +1 -43
- gsMap/utils/manhattan_plot.py +639 -0
- gsMap/{regression_read.py → utils/regression_read.py} +1 -1
- gsMap/visualize.py +100 -55
- {gsmap-1.62.dist-info → gsmap-1.64.dist-info}/METADATA +21 -46
- gsmap-1.64.dist-info/RECORD +30 -0
- gsmap-1.62.dist-info/RECORD +0 -24
- /gsMap/{jackknife.py → utils/jackknife.py} +0 -0
- {gsmap-1.62.dist-info → gsmap-1.64.dist-info}/LICENSE +0 -0
- {gsmap-1.62.dist-info → gsmap-1.64.dist-info}/WHEEL +0 -0
- {gsmap-1.62.dist-info → gsmap-1.64.dist-info}/entry_points.txt +0 -0
gsMap/visualize.py
CHANGED
@@ -1,12 +1,13 @@
|
|
1
|
-
import argparse
|
2
1
|
from pathlib import Path
|
3
2
|
from typing import Literal
|
4
3
|
|
5
|
-
import scanpy as sc
|
6
4
|
import numpy as np
|
7
5
|
import pandas as pd
|
8
6
|
import plotly.express as px
|
9
|
-
|
7
|
+
import scanpy as sc
|
8
|
+
from scipy.spatial import KDTree
|
9
|
+
|
10
|
+
from gsMap.config import VisualizeConfig
|
10
11
|
|
11
12
|
|
12
13
|
def load_ldsc(ldsc_input_file):
|
@@ -18,11 +19,19 @@ def load_ldsc(ldsc_input_file):
|
|
18
19
|
|
19
20
|
|
20
21
|
# %%
|
21
|
-
def load_st_coord(adata,
|
22
|
+
def load_st_coord(adata, feature_series: pd.Series, annotation):
|
22
23
|
spot_name = adata.obs_names.to_list()
|
23
|
-
|
24
|
-
|
25
|
-
|
24
|
+
assert 'spatial' in adata.obsm.keys(), 'spatial coordinates are not found in adata.obsm'
|
25
|
+
|
26
|
+
# to DataFrame
|
27
|
+
space_coord = adata.obsm['spatial']
|
28
|
+
if isinstance(space_coord, np.ndarray):
|
29
|
+
space_coord = pd.DataFrame(space_coord, columns=['sx', 'sy'], index=spot_name)
|
30
|
+
else:
|
31
|
+
space_coord = pd.DataFrame(space_coord.values, columns=['sx', 'sy'], index=spot_name)
|
32
|
+
|
33
|
+
space_coord = space_coord[space_coord.index.isin(feature_series.index)]
|
34
|
+
space_coord_concat = pd.concat([space_coord.loc[feature_series.index], feature_series], axis=1)
|
26
35
|
space_coord_concat.head()
|
27
36
|
if annotation is not None:
|
28
37
|
annotation = pd.Series(adata.obs[annotation].values, index=adata.obs_names, name='annotation')
|
@@ -30,10 +39,25 @@ def load_st_coord(adata, ldsc, annotation):
|
|
30
39
|
return space_coord_concat
|
31
40
|
|
32
41
|
|
33
|
-
|
42
|
+
def estimate_point_size_for_plot(coordinates, DEFAULT_PIXEL_WIDTH = 1000):
|
43
|
+
tree = KDTree(coordinates)
|
44
|
+
distances, _ = tree.query(coordinates, k=2)
|
45
|
+
avg_min_distance = np.mean(distances[:, 1])
|
46
|
+
# get the width and height of the plot
|
47
|
+
width = np.max(coordinates[:, 0]) - np.min(coordinates[:, 0])
|
48
|
+
height = np.max(coordinates[:, 1]) - np.min(coordinates[:, 1])
|
49
|
+
|
50
|
+
scale_factor = DEFAULT_PIXEL_WIDTH / max(width, height)
|
51
|
+
pixel_width = width * scale_factor
|
52
|
+
pixel_height = height * scale_factor
|
53
|
+
|
54
|
+
point_size = np.ceil(avg_min_distance * scale_factor)
|
55
|
+
return (pixel_width, pixel_height), point_size
|
56
|
+
|
57
|
+
|
34
58
|
def draw_scatter(space_coord_concat, title=None, fig_style: Literal['dark', 'light'] = 'light',
|
35
|
-
point_size: int = None, width=800, height=600, annotation=None):
|
36
|
-
#
|
59
|
+
point_size: int = None, width=800, height=600, annotation=None, color_by='logp'):
|
60
|
+
# Set theme based on fig_style
|
37
61
|
if fig_style == 'dark':
|
38
62
|
px.defaults.template = "plotly_dark"
|
39
63
|
else:
|
@@ -50,24 +74,25 @@ def draw_scatter(space_coord_concat, title=None, fig_style: Literal['dark', 'lig
|
|
50
74
|
(1 / 8, '#4575b4'), # Dark Blue
|
51
75
|
(0, '#313695') # Deep Blue
|
52
76
|
]
|
53
|
-
# custom_color_scale = px.colors.diverging.balance
|
54
77
|
custom_color_scale.reverse()
|
78
|
+
|
79
|
+
# Create the scatter plot
|
55
80
|
fig = px.scatter(
|
56
81
|
space_coord_concat,
|
57
82
|
x='sx',
|
58
83
|
y='sy',
|
59
|
-
color=
|
84
|
+
color=color_by,
|
60
85
|
symbol='annotation' if annotation is not None else None,
|
61
86
|
title=title,
|
62
87
|
color_continuous_scale=custom_color_scale,
|
63
|
-
range_color=[0, max(space_coord_concat
|
88
|
+
range_color=[0, max(space_coord_concat[color_by])],
|
64
89
|
)
|
65
90
|
|
91
|
+
# Update marker size if specified
|
66
92
|
if point_size is not None:
|
67
|
-
fig.update_traces(marker=dict(size=point_size))
|
68
|
-
|
69
|
-
fig.update_layout(legend_title_text='Annotation')
|
93
|
+
fig.update_traces(marker=dict(size=point_size, symbol='circle'))
|
70
94
|
|
95
|
+
# Update layout for figure size
|
71
96
|
fig.update_layout(
|
72
97
|
autosize=False,
|
73
98
|
width=width,
|
@@ -78,26 +103,74 @@ def draw_scatter(space_coord_concat, title=None, fig_style: Literal['dark', 'lig
|
|
78
103
|
fig.update_layout(
|
79
104
|
legend=dict(
|
80
105
|
yanchor="top",
|
81
|
-
y=0.
|
106
|
+
y=0.95,
|
82
107
|
xanchor="left",
|
83
|
-
x
|
108
|
+
x=1.0,
|
84
109
|
font=dict(
|
85
110
|
size=10,
|
86
111
|
)
|
87
112
|
)
|
88
113
|
)
|
89
|
-
|
90
|
-
|
114
|
+
|
115
|
+
# Update colorbar to be at the bottom and horizontal
|
116
|
+
fig.update_layout(
|
117
|
+
coloraxis_colorbar=dict(
|
118
|
+
orientation='h', # Make the colorbar horizontal
|
119
|
+
x=0.5, # Center the colorbar horizontally
|
120
|
+
y=-0.0, # Position below the plot
|
121
|
+
xanchor='center', # Anchor the colorbar at the center
|
122
|
+
yanchor='top', # Anchor the colorbar at the top to keep it just below the plot
|
123
|
+
len=0.75, # Length of the colorbar relative to the plot width
|
124
|
+
title=dict(
|
125
|
+
text='-log10(p)' if color_by == 'logp' else color_by, # Colorbar title
|
126
|
+
side='top' # Place the title at the top of the colorbar
|
127
|
+
)
|
128
|
+
)
|
129
|
+
)
|
130
|
+
# Remove gridlines, axis labels, and ticks
|
131
|
+
fig.update_xaxes(
|
132
|
+
showgrid=False, # Hide x-axis gridlines
|
133
|
+
zeroline=False, # Hide x-axis zero line
|
134
|
+
showticklabels=False, # Hide x-axis tick labels
|
135
|
+
title=None, # Remove x-axis title
|
136
|
+
scaleanchor='y', # Link the x-axis scale to the y-axis scale
|
137
|
+
)
|
138
|
+
|
139
|
+
fig.update_yaxes(
|
140
|
+
showgrid=False, # Hide y-axis gridlines
|
141
|
+
zeroline=False, # Hide y-axis zero line
|
142
|
+
showticklabels=False, # Hide y-axis tick labels
|
143
|
+
title=None # Remove y-axis title
|
144
|
+
)
|
145
|
+
|
146
|
+
# Adjust margins to ensure no clipping and equal axis ratio
|
147
|
+
fig.update_layout(
|
148
|
+
margin=dict(l=0, r=0, t=20, b=10), # Adjust margins to prevent clipping
|
149
|
+
height=width # Ensure the figure height matches the width for equal axis ratio
|
150
|
+
)
|
151
|
+
|
152
|
+
# Adjust the title location and font size
|
153
|
+
fig.update_layout(
|
154
|
+
title=dict(
|
155
|
+
y=0.98,
|
156
|
+
x=0.5, # Center the title horizontally
|
157
|
+
xanchor='center', # Anchor the title at the center
|
158
|
+
yanchor='top', # Anchor the title at the top
|
159
|
+
font=dict(
|
160
|
+
size=20 # Increase the title font size
|
161
|
+
)
|
162
|
+
))
|
91
163
|
|
92
164
|
return fig
|
93
165
|
|
94
166
|
|
167
|
+
|
95
168
|
def run_Visualize(config: VisualizeConfig):
|
96
|
-
print(f'------Loading LDSC results of {config.
|
97
|
-
ldsc = load_ldsc(ldsc_input_file=Path(config.
|
169
|
+
print(f'------Loading LDSC results of {config.ldsc_save_dir}...')
|
170
|
+
ldsc = load_ldsc(ldsc_input_file=Path(config.ldsc_save_dir) / f'{config.sample_name}_{config.trait_name}.csv.gz')
|
98
171
|
|
99
172
|
print(f'------Loading ST data of {config.sample_name}...')
|
100
|
-
adata = sc.read_h5ad(f'{config.
|
173
|
+
adata = sc.read_h5ad(f'{config.hdf5_with_latent_path}')
|
101
174
|
|
102
175
|
space_coord_concat = load_st_coord(adata, ldsc, annotation=config.annotation)
|
103
176
|
fig = draw_scatter(space_coord_concat,
|
@@ -109,46 +182,18 @@ def run_Visualize(config: VisualizeConfig):
|
|
109
182
|
annotation=config.annotation
|
110
183
|
)
|
111
184
|
|
112
|
-
# save the figure to html
|
113
185
|
|
114
186
|
# Visualization
|
115
|
-
output_dir = Path(config.
|
187
|
+
output_dir = Path(config.output_dir)
|
116
188
|
output_dir.mkdir(parents=True, exist_ok=True, mode=0o755)
|
117
189
|
output_file_html = output_dir / f'{config.sample_name}_{config.trait_name}.html'
|
118
190
|
output_file_pdf = output_dir / f'{config.sample_name}_{config.trait_name}.pdf'
|
191
|
+
output_file_csv = output_dir / f'{config.sample_name}_{config.trait_name}.csv'
|
119
192
|
|
120
193
|
fig.write_html(str(output_file_html))
|
121
194
|
fig.write_image(str(output_file_pdf))
|
195
|
+
space_coord_concat.to_csv(str(output_file_csv))
|
122
196
|
|
123
197
|
print(
|
124
198
|
f'------The visualization result is saved in a html file: {output_file_html} which can interactively viewed in a web browser and a pdf file: {output_file_pdf}.')
|
125
|
-
|
126
|
-
|
127
|
-
if __name__ == '__main__':
|
128
|
-
TEST = True
|
129
|
-
if TEST:
|
130
|
-
test_dir = '/storage/yangjianLab/chenwenhao/projects/202312_gsMap/data/gsMap_test/Nature_Neuroscience_2021'
|
131
|
-
name = 'E16.5_E1S1'
|
132
|
-
|
133
|
-
config = VisualizeConfig(
|
134
|
-
input_hdf5_path=f'/storage/yangjianLab/songliyang/SpatialData/Data/Embryo/Mice/Cell_MOSTA/h5ad/E16.5_E1S1.MOSTA.h5ad',
|
135
|
-
input_ldsc_dir=
|
136
|
-
f'/storage/yangjianLab/songliyang/SpatialData/Data/Embryo/Mice/Cell_MOSTA/ldsc_enrichment_frac/E16.5_E1S1/',
|
137
|
-
output_figure_dir='/storage/yangjianLab/chenwenhao/projects/202312_gsMap/data/gsMap_test/Nature_Neuroscience_2021/snake_workdir/Cortex_151507/figure/',
|
138
|
-
sample_name=name,
|
139
|
-
trait_name='GIANT_EUR_Height_2022_Nature',
|
140
|
-
fig_title='GIANT_EUR_Height_2022_Nature',
|
141
|
-
fig_height=800,
|
142
|
-
fig_width=800,
|
143
|
-
fig_style='light',
|
144
|
-
point_size=2,
|
145
|
-
annotation='annotation',
|
146
|
-
)
|
147
|
-
run_Visualize(config)
|
148
|
-
else:
|
149
|
-
parser = argparse.ArgumentParser(description="Visualization the results")
|
150
|
-
add_Visualization_args(parser)
|
151
|
-
args = parser.parse_args()
|
152
|
-
config = VisualizeConfig(**vars(args))
|
153
|
-
|
154
|
-
run_Visualize(config)
|
199
|
+
print(f'------The visualization data is saved in a csv file: {output_file_csv}.')
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: gsMap
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.64
|
4
4
|
Summary: Genetics-informed pathogenic spatial mapping
|
5
5
|
Author-email: liyang <songliyang@westlake.edu.cn>, wenhao <chenwenhao@westlake.edu.cn>
|
6
6
|
Requires-Python: >=3.8
|
@@ -26,6 +26,12 @@ Requires-Dist: pyranges
|
|
26
26
|
Requires-Dist: pyfiglet
|
27
27
|
Requires-Dist: plotly
|
28
28
|
Requires-Dist: kaleido
|
29
|
+
Requires-Dist: jinja2
|
30
|
+
Requires-Dist: scanpy
|
31
|
+
Requires-Dist: zarr
|
32
|
+
Requires-Dist: bitarray
|
33
|
+
Requires-Dist: pyarrow
|
34
|
+
Requires-Dist: scikit-misc
|
29
35
|
Requires-Dist: sphinx ; extra == "doc"
|
30
36
|
Requires-Dist: sphinx-argparse ; extra == "doc"
|
31
37
|
Requires-Dist: sphinx-autobuild ; extra == "doc"
|
@@ -46,21 +52,22 @@ Requires-Dist: sphinxcontrib-serializinghtml ; extra == "doc"
|
|
46
52
|
Requires-Dist: furo ; extra == "doc"
|
47
53
|
Requires-Dist: myst-parser ; extra == "doc"
|
48
54
|
Requires-Dist: nbsphinx ; extra == "doc"
|
49
|
-
Project-URL: Documentation, https
|
55
|
+
Project-URL: Documentation, https://yanglab.westlake.edu.cn/gsmap/document
|
50
56
|
Project-URL: Home, https://github.com/LeonSong1995/gsMap
|
51
|
-
Project-URL: Website, https
|
57
|
+
Project-URL: Website, https://yanglab.westlake.edu.cn/gsmap/home
|
52
58
|
Provides-Extra: doc
|
53
59
|
|
54
60
|
# gsMap (genetically informed spatial mapping of cells for complex traits)
|
55
|
-
[](https://github.com/LeonSong1995/gsMap/stargazers)
|
62
|
+
[](https://pypi.org/p/gsMap)
|
56
63
|
[](https://opensource.org/licenses/MIT)
|
57
64
|
|
65
|
+

|
58
66
|
|
59
|
-
##
|
67
|
+
## 1.Citation
|
68
|
+
Liyang Song, Wenhao Chen, Junren Hou, Minmin Guo, Jian Yang (2024) Spatially resolved mapping of cells associated with human complex traits. (Under review)
|
60
69
|
|
61
|
-
|
62
|
-
|
63
|
-
## Installation
|
70
|
+
## 2.Installation
|
64
71
|
|
65
72
|
install use pip:
|
66
73
|
|
@@ -71,52 +78,20 @@ pip install gsMap
|
|
71
78
|
install from source:
|
72
79
|
|
73
80
|
```bash
|
74
|
-
git clone
|
81
|
+
git clone https://github.com/LeonSong1995/gsMap.git
|
75
82
|
cd gsMap
|
76
83
|
pip install -e .
|
77
84
|
```
|
78
85
|
|
79
|
-
## Usage
|
80
|
-
|
81
|
-
To use gsMap, navigate to the command line and enter `gsMap` followed by the subcommand that corresponds to the desired operation. Each subcommand may require specific arguments to run.
|
82
|
-
|
83
|
-
### Basic Command Structure
|
84
|
-
|
85
|
-
```bash
|
86
|
-
gsmap subcommand [arguments...]
|
87
|
-
```
|
88
|
-
|
89
|
-
- `subcommand`: The specific operation you wish to perform.
|
90
|
-
- `arguments`: The arguments and options required for the subcommand.
|
91
|
-
|
92
|
-
### Available Subcommands
|
93
|
-
|
94
|
-
(Provide a list and brief description of each available subcommand. For example:)
|
95
|
-
|
96
|
-
- `run_find_latent_representations`: Finds latent representations using a GNN-VAE model.
|
97
|
-
- `run_latent_to_gene`: Maps latent representations to gene markers.
|
98
|
-
- `run_generate_ldscore`: Generates LD scores for genomic spots.
|
99
|
-
- `run_spatial_ldsc`: Conducts spatial LDSC analysis.
|
100
|
-
- `run_cauchy_combination`: Performs Cauchy combination tests for annotations.
|
101
|
-
- `run_all_mode`: Executes a comprehensive pipeline covering all steps.
|
102
|
-
|
103
|
-
### Examples
|
104
|
-
|
105
|
-
To run a specific functionality, you need to provide the appropriate subcommand and arguments. For example:
|
106
|
-
### Running Requirement
|
107
|
-
|
108
|
-
|
109
|
-
```bash
|
110
|
-
gsmap run_find_latent_representations --input_hdf5_path <path> --output_hdf5_path <path> --sample_name <name>
|
111
|
-
```
|
86
|
+
## 3.Usage
|
112
87
|
|
113
|
-
|
88
|
+
Please checkout the documentations and tutorials at
|
89
|
+
[gsMap.docs](https://yanglab.westlake.edu.cn/gsmap/document).
|
114
90
|
|
115
|
-
## Contributing
|
116
91
|
|
117
|
-
|
92
|
+
## 4.Online visualization
|
118
93
|
|
119
|
-
|
94
|
+
To visualize the traits-embryo or traits-brain association spatial maps, please refer to [gsmap.visualization](https://yanglab.westlake.edu.cn/gsmap/visualize).
|
120
95
|
|
121
96
|
....
|
122
97
|
|
@@ -0,0 +1,30 @@
|
|
1
|
+
gsMap/__init__.py,sha256=hH_7cxKCiXvoE-nLdYVifzx31Y227kJExpLs9O9ecRo,78
|
2
|
+
gsMap/__main__.py,sha256=jR-HT42Zzfj2f-7kFJy0bkWjNxcV1MyfQHXFpef2nSE,62
|
3
|
+
gsMap/cauchy_combination_test.py,sha256=zBPR7DOaNkr7rRoua4tAjRZL7ArjCyMRSQlPSUdHNSE,5694
|
4
|
+
gsMap/config.py,sha256=hMUvlwlKZXeRdTJZfMINz_8DadVhEIT6X6fyJf11M9E,41134
|
5
|
+
gsMap/diagnosis.py,sha256=pp3ONVaWCOoNCog1_6eud38yicBFxL-XhH7D8iTBgF4,13220
|
6
|
+
gsMap/find_latent_representation.py,sha256=BVv4dyTolrlciHG3I-vwNDh2ruPpTf9jiT1hMKZnpto,6044
|
7
|
+
gsMap/format_sumstats.py,sha256=9OBxuunoOLml3LKZvvRsPEEjQvT1Cuqb0w6lqsRIYPw,13714
|
8
|
+
gsMap/generate_ldscore.py,sha256=2JfQoMWeQ0-B-zRHakmwq8ovkeewlnWHUCnih6od6ZE,29089
|
9
|
+
gsMap/latent_to_gene.py,sha256=6TlOWDhzzrj18o9gJk2b-WMOkeXqscK8CJJKxCtilHg,9640
|
10
|
+
gsMap/main.py,sha256=skyBtESdjvuXd9HNq5c83OPxQTNgLVErkYhwuJm8tE4,1285
|
11
|
+
gsMap/report.py,sha256=H0uYAru2L5-d41_LFHPPdoJbtiTzP4f8kX-mirUNAfc,6963
|
12
|
+
gsMap/run_all_mode.py,sha256=sPEct9fRw7aAQuU7BNChxk-I8YQcXuq--mtBn-2wTTY,8388
|
13
|
+
gsMap/spatial_ldsc_multiple_sumstats.py,sha256=09j2zG98JUjQvSHPaRIDQVMZZLYDd1JBFaZTkW7tdvY,18470
|
14
|
+
gsMap/visualize.py,sha256=FLIRHHj1KntLMFDjAhg1jZnJUdvrncR74pCW2Kj5pus,7453
|
15
|
+
gsMap/GNN_VAE/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
16
|
+
gsMap/GNN_VAE/adjacency_matrix.py,sha256=pmSfK9TTwdrsWTmHvCqVrbRE0PAiq1lvgmxzrdQgpiU,3500
|
17
|
+
gsMap/GNN_VAE/model.py,sha256=Fixl8-2zN3T5MmMtpMIvxsBYydM3QVR4uC3Hhsg0DzI,3349
|
18
|
+
gsMap/GNN_VAE/train.py,sha256=KnvZYHImRzTwJl1H0dkZZqWASdZ5VgYTCifQVW8TavM,3389
|
19
|
+
gsMap/templates/report_template.html,sha256=pdxHFl_W0W351NUzuJTf_Ay_BfKlEbD_fztNabAGmmg,8214
|
20
|
+
gsMap/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
+
gsMap/utils/generate_r2_matrix.py,sha256=A1BrUnlTrYjRwEKxK0I1FbZ5SCQzcviWVM-JzFHHRkw,29352
|
22
|
+
gsMap/utils/jackknife.py,sha256=nEDPVQJOPQ_uqfUCGX_v5cQwokgCqUmJTT_8rVFuIQo,18244
|
23
|
+
gsMap/utils/make_annotations.py,sha256=lCbtahT27WFOwLgZrEUE5QcNRuMXmAFYUfsFR-cT-m0,22197
|
24
|
+
gsMap/utils/manhattan_plot.py,sha256=k3n-NNgMsov9-8UQrirVqG560FUfJ4d6wNG8C0OeCjY,26235
|
25
|
+
gsMap/utils/regression_read.py,sha256=n_hZZzQXHU-CSLvSofXmQM5Jw4Zpufv3U2HoUW344ko,8768
|
26
|
+
gsmap-1.64.dist-info/entry_points.txt,sha256=s_P2Za22O077tc1FPLKMinbdRVXaN_HTcDBgWMYpqA4,41
|
27
|
+
gsmap-1.64.dist-info/LICENSE,sha256=Ni2F-lLSv_H1xaVT3CoSrkiKzMvlgwh-dq8PE1esGyI,1094
|
28
|
+
gsmap-1.64.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
29
|
+
gsmap-1.64.dist-info/METADATA,sha256=ITHEobajRdMgQkc-ZpI708Xb5cB95_NxX-uDWVMPa60,3376
|
30
|
+
gsmap-1.64.dist-info/RECORD,,
|
gsmap-1.62.dist-info/RECORD
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
gsMap/__init__.py,sha256=RJYX4ncfccRzcIr2GQI4s5QYvjfLD-KKlzWeHaZMtzk,78
|
2
|
-
gsMap/__main__.py,sha256=jR-HT42Zzfj2f-7kFJy0bkWjNxcV1MyfQHXFpef2nSE,62
|
3
|
-
gsMap/cauchy_combination_test.py,sha256=WI71HmSJ38Q2VEohnVrWHL02MnY0clqX9Fb5VrXCCz4,6758
|
4
|
-
gsMap/config.py,sha256=2-gQR-nJRI9XfxegGCuUYMPDf43nuo7gWXR8JhtKWjs,39578
|
5
|
-
gsMap/find_latent_representation.py,sha256=liRXtQKixYwGA6ZQmfXXVeHAypobACYO1wYT-wyr3AU,8337
|
6
|
-
gsMap/format_sumstats.py,sha256=wC8eSFCbD8qpq5JOaxhYP5iL3JZ6NmG-JPThyQ52tDM,13838
|
7
|
-
gsMap/generate_ldscore.py,sha256=s2nhq9MvQa6wfRRsCe93lv54zyimvNn1aW0-dG-PsXo,25494
|
8
|
-
gsMap/generate_r2_matrix.py,sha256=BGe4WrCm19nQwzYz5vmNIC7tfIM2_QUMPd8JdfFDock,29761
|
9
|
-
gsMap/jackknife.py,sha256=nEDPVQJOPQ_uqfUCGX_v5cQwokgCqUmJTT_8rVFuIQo,18244
|
10
|
-
gsMap/latent_to_gene.py,sha256=lvEokL3po0kTnMk7mQvBwN0gkfO26myudRRQX1pX0BQ,11269
|
11
|
-
gsMap/main.py,sha256=ttGY1uSmHaC6R1fPfuvonr3Nj5lZt_U3UFw15VQKDIM,1511
|
12
|
-
gsMap/make_annotations.py,sha256=QhI3aTO9eOUuqvDXLe23eUGjld7bt_1H6vtvWX5TR5Y,23984
|
13
|
-
gsMap/regression_read.py,sha256=ATfUapl4zypkUwo8xivzD7aGlZNSMavR-xVavSsmVkI,8780
|
14
|
-
gsMap/spatial_ldsc_multiple_sumstats.py,sha256=Ixt8HpWZyJ7L1OA539mkvykdIDoZG9VT9ivwRmCOSwA,14440
|
15
|
-
gsMap/visualize.py,sha256=FMuSInYfNZQMLHgh-jjER4j-U78SQVNCZJOTnL-xhgM,5645
|
16
|
-
gsMap/GNN_VAE/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
17
|
-
gsMap/GNN_VAE/adjacency_matrix.py,sha256=0-qw5qHGrGugkjgVyWLYjC0Qa_iKvR1TnFxAgCaxJFw,3500
|
18
|
-
gsMap/GNN_VAE/model.py,sha256=3uWTM_zjgCjBGnuutiua0ZV2W7WiIG5RA9Y9gRHmYA8,3349
|
19
|
-
gsMap/GNN_VAE/train.py,sha256=cAj81gJ9AwV-f5gqS1PjNtfkcZ1s_TtRcDIPIb4AtoM,3389
|
20
|
-
gsmap-1.62.dist-info/entry_points.txt,sha256=s_P2Za22O077tc1FPLKMinbdRVXaN_HTcDBgWMYpqA4,41
|
21
|
-
gsmap-1.62.dist-info/LICENSE,sha256=Ni2F-lLSv_H1xaVT3CoSrkiKzMvlgwh-dq8PE1esGyI,1094
|
22
|
-
gsmap-1.62.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
|
23
|
-
gsmap-1.62.dist-info/METADATA,sha256=E9L2xZn1IRR2cmoC_gMjWoTF2fIx6qY9VDlSLg6_MrQ,3924
|
24
|
-
gsmap-1.62.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|