Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dauer add #40

Merged
merged 10 commits into from
Feb 5, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions .github/workflows/non_omv.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: Non-OMV-tests

on:
push:
branches: [ main, development, experimental, ow* ]
branches: [ main, development, experimental, ow*, feature/* ]
pull_request:
branches: [ main, development, experimental, ow* ]
branches: [ main, development, experimental, ow*, feature/* ]

jobs:
build:
Expand Down Expand Up @@ -39,6 +39,10 @@ jobs:
pip list


- name: Run pytest
run: |
pytest -vs

- name: Run quick test script
run: |
./test.sh -q
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ __pycache__
/docs/assets/Bentley*
/docs/assets/Randi*
/docs/assets/WormNeuro*
/docs/assets/Yin*

/docs/*Cook*data*.md
/docs/*Varshney*data*.md
Expand All @@ -28,6 +29,7 @@ __pycache__
/docs/*Randi*data*.md
/docs/*WormNeuro*data*.md
/docs/*Ripo*data*.md
/docs/*Yin*data*.md

/docs/.DS_Store
/docs/assets/RipollSanchez*
Expand Down
4 changes: 2 additions & 2 deletions cect/Analysis.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@

def test_bilaterals():
from cect.White_whole import get_instance

# from cect.VarshneyDataReader import get_instance

"""
"""from cect.TestDataReader import get_instance
from cect.Cook2020DataReader import get_instance
from cect.WormNeuroAtlasFuncReader import get_instance
from cect.RipollSanchezDataReader import get_instance
Expand All @@ -24,7 +25,6 @@ def test_bilaterals():
from cect.Cook2019MaleReader import get_instance
from cect.Cook2019HermReader import get_instance
from cect.WitvlietDataReader8 import get_instance
from cect.TestDataReader import get_instance
from cect.SpreadsheetDataReader import get_instance
from cect.BrittinDataReader import get_instance
from cect.WormNeuroAtlasMAReader import get_instance
Expand Down
4 changes: 2 additions & 2 deletions cect/CellInfo.py
Original file line number Diff line number Diff line change
Expand Up @@ -99,10 +99,10 @@ def load_individual_neuron_info():
cell_info = {}
with open(filename) as csvfile:
reader = csv.reader(csvfile, delimiter=";")
print(reader)
# print(reader)

for row in reader:
print(", ".join(row))
print_(", ".join(row))
if not row[0].startswith("#"):
cell_info[row[0]] = (row[1].strip(), row[2].strip(), row[3].strip())

Expand Down
5 changes: 4 additions & 1 deletion cect/Comparison.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
"RipollSanchezShortRange": "RipollSanchezShortRange_data",
"RipollSanchezMidRange": "RipollSanchezMidRange_data",
"RipollSanchezLongRange": "RipollSanchezLongRange_data",
"Yin2024": "Yin2024_data",
"Test": "Test_data",
"SSData": "SSData_data",
"UpdSSData": "UpdSSData_data",
Expand Down Expand Up @@ -202,6 +203,8 @@ def generate_comparison_page(quick: bool, color_table=True, dataset_pages=True):
"RipollSanchez_2023",
]

readers["Yin2024"] = ["cect.Yin2024DataReader", "Yin_2024"]

if not quick:
readers["SSData"] = ["cect.SpreadsheetDataReader", None]
readers["UpdSSData"] = ["cect.UpdatedSpreadsheetDataReader", None]
Expand Down Expand Up @@ -582,7 +585,7 @@ def generate_comparison_page(quick: bool, color_table=True, dataset_pages=True):
.replace("Sanchez", " Sanchez et al. 2023 ")
.replace("tley", "tley et al.")
.replace("Cook", "Cook et al.")
.replace("ttin", "ttin et al.")
.replace("in", "in et al.")
.replace("19", "19 ")
.replace("liet", "liet ")
.replace("MA", "Monoamin.")
Expand Down
31 changes: 20 additions & 11 deletions cect/ConnectomeDataset.py
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,10 @@ def to_networkx_graph(self, synclass, view=None):
return Gn

def add_connection_info(
self, conn: ConnectionInfo, check_overwritten_connections: bool = False
self,
conn: ConnectionInfo,
check_overwritten_connections: bool = True,
append_existing_connections=False,
):
if self.verbose:
print_("---- Adding: %s" % conn)
Expand Down Expand Up @@ -138,17 +141,23 @@ def add_connection_info(
"Preexisting connection (%i conns already) at (%i,%i) - %s..."
% (len(self.connection_infos), pre_index, post_index, conn)
)

if conn_array[pre_index, post_index] != conn.number:
info = (
" *** Existing connection at (%i,%i), was: %s, setting to: %s"
" *** Existing connection at (%i,%i), was: %s, changing to: %s (appending: %s)"
% (
pre_index,
post_index,
conn_array[pre_index, post_index],
conn.number,
append_existing_connections,
)
)
if check_overwritten_connections:

if append_existing_connections:
conn_array[pre_index, post_index] += conn.number

elif check_overwritten_connections:
raise Exception(info)
else:
print_(info)
Expand All @@ -161,7 +170,7 @@ def add_connection_info(
% (pre_index, post_index, self.nodes, conn_array)
)

def read_data(self):
def _read_data(self):
return self.get_neuron_to_neuron_conns()

def get_neuron_to_neuron_conns(self):
Expand All @@ -174,7 +183,7 @@ def get_neuron_to_neuron_conns(self):
neuron_conns.append(conn_info)
return list(neurons), neuron_conns

def read_muscle_data(self):
def _read_muscle_data(self):
return self.get_neuron_to_muscle_conns()

def get_neuron_to_muscle_conns(self):
Expand Down Expand Up @@ -730,7 +739,6 @@ def get_node_size(node_set):
thickness=15,
title="Node Connections",
xanchor="left",
titleside="right",
),
line_width=1,
),
Expand Down Expand Up @@ -1095,26 +1103,27 @@ def connection_number_plot(self, synclass): # Todo: get better name
print(pprint.pprint(nx.node_link_data(G)))

# from cect.ConnectomeView import NEURONS_VIEW as view
# from cect.ConnectomeView import RAW_VIEW as view
from cect.ConnectomeView import RAW_VIEW as view
# from cect.ConnectomeView import ESCAPE_VIEW as view

# from cect.ConnectomeView import SOCIAL_VIEW as view
# from cect.ConnectomeView import SOCIAL_VIEW as view
# from cect.ConnectomeView import COOK_FIG3_VIEW as view
from cect.ConnectomeView import PEP_HUBS_VIEW as view
# from cect.ConnectomeView import PEP_HUBS_VIEW as view

# from cect.White_whole import get_instance
from cect.BrittinDataReader import get_instance
# from cect.BrittinDataReader import get_instance
# from cect.WitvlietDataReader8 import get_instance
# from cect.Cook2019HermReader import get_instance
from cect.Yin2024DataReader import get_instance

synclass = "Chemical Inh"
synclass = "Chemical Exc"

# synclass = "Acetylcholine"
# synclass = "Chemical"
synclass = "Chemical"
# synclass = "Electrical"
synclass = "Contact"
# synclass = "Contact"
# from cect.TestDataReader import get_instance

cds = get_instance()
Expand Down
2 changes: 1 addition & 1 deletion cect/ConnectomeReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ def check_cells(cells):
missing_preferred.remove(c)

if False:
print(
print_(
"Of these %i cells:\n %i in preferred: %s\n %i not in preferred: %s\n %i missing preferred: %s\n %i muscles: %s"
% (
len(cells),
Expand Down
1 change: 0 additions & 1 deletion cect/ConnectomeView.py
Original file line number Diff line number Diff line change
Expand Up @@ -510,7 +510,6 @@ def get_index_of_cell(self, cell):
RAW_VIEW,
NEURONS_VIEW,
PHARYNX_VIEW,
NONPHARYNGEAL_NEURONS_HERM_VIEW,
SOCIAL_VIEW,
ESCAPE_VIEW,
COOK_FIG3_VIEW,
Expand Down
6 changes: 6 additions & 0 deletions cect/Cook2019DataReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,12 @@ def __init__(self, sex):
for conn in conns:
self.add_connection_info(conn)

def read_data(self):
return self._read_data()

def read_muscle_data(self):
return self._read_muscle_data()

def read_all_data(self):
"""
Returns:
Expand Down
8 changes: 4 additions & 4 deletions cect/Cook2019HermReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,18 @@ def get_instance():
return Cook2019DataReader("Hermaphodite")


my_instance = get_instance()

"""
read_data = my_instance.read_data
read_muscle_data = my_instance.read_muscle_data
read_muscle_data = my_instance.read_muscle_data"""

READER_DESCRIPTION = (
"""Data extracted from %s for neuronal connectivity of hermaphrodite"""
% get_dataset_source_on_github(my_instance.filename.split("/")[-1])
% get_dataset_source_on_github(Cook2019DataReader.filename.split("/")[-1])
)


def main1():
my_instance = get_instance()
cells, neuron_conns = my_instance.read_data()
neurons2muscles, muscles, muscle_conns = my_instance.read_muscle_data()
analyse_connections(cells, neuron_conns, neurons2muscles, muscles, muscle_conns)
Expand Down
12 changes: 6 additions & 6 deletions cect/Cook2019MaleReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,20 @@ def get_instance():
return Cook2019DataReader("Male")


my_instance = get_instance()

"""
read_data = my_instance.read_data
read_muscle_data = my_instance.read_muscle_data
read_muscle_data = my_instance.read_muscle_data"""

READER_DESCRIPTION = (
"""Data extracted from %s for neuronal connectivity of male"""
% get_dataset_source_on_github(my_instance.filename.split("/")[-1])
% get_dataset_source_on_github(Cook2019DataReader.filename.split("/")[-1])
)


def main1():
cells, neuron_conns = read_data()
neurons2muscles, muscles, muscle_conns = read_muscle_data()
my_instance = get_instance()
cells, neuron_conns = my_instance.read_data()
neurons2muscles, muscles, muscle_conns = my_instance.read_muscle_data()
analyse_connections(cells, neuron_conns, neurons2muscles, muscles, muscle_conns)


Expand Down
2 changes: 1 addition & 1 deletion cect/Cook2020DataReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ def __init__(self):

cells, neuron_conns = self.read_data()
for conn in neuron_conns:
self.add_connection_info(conn)
self.add_connection_info(conn, check_overwritten_connections=False)

def read_data(self):
"""
Expand Down
27 changes: 16 additions & 11 deletions cect/RipollSanchezDataReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,16 +27,20 @@ def standardise_cell_name(cell):
return cell


def get_filename(model):
spreadsheet_location = os.path.dirname(os.path.abspath(__file__)) + "/data/"
filename = "%s01022024_neuropeptide_connectome_%s.csv" % (
spreadsheet_location,
model,
)
return filename


class RipollSanchezDataReader(ConnectomeDataset):
verbose = False

def __init__(self, model):
spreadsheet_location = os.path.dirname(os.path.abspath(__file__)) + "/data/"

self.filename = "%s01022024_neuropeptide_connectome_%s.csv" % (
spreadsheet_location,
model,
)
self.filename = get_filename(model)

ConnectomeDataset.__init__(self)

Expand All @@ -51,7 +55,7 @@ def read_data(self):
with open(self.filename) as csvfile:
data = list(csv.reader(csvfile))

print_("Opened the CSV file: " + self.filename)
print_("Opened up the CSV file: " + self.filename)

for i in range(1, len(data)):
pre_cell = standardise_cell_name(data[0][i])
Expand Down Expand Up @@ -86,10 +90,9 @@ def get_instance():
return RipollSanchezDataReader("short_range_model")


my_instance = get_instance()

"""
read_data = my_instance.read_data
read_muscle_data = my_instance.read_muscle_data
read_muscle_data = my_instance.read_muscle_data"""


def load_hub_info():
Expand Down Expand Up @@ -123,6 +126,8 @@ def load_hub_info():


def main():
print("Testing...")

tdr_instance = RipollSanchezDataReader("short_range_model")

cells, neuron_conns = tdr_instance.read_data()
Expand Down Expand Up @@ -162,5 +167,5 @@ def main():


if __name__ == "__main__":
# main()
main()
load_hub_info()
18 changes: 10 additions & 8 deletions cect/RipollSanchezLongRangeReader.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,35 +7,37 @@
############################################################


from cect.RipollSanchezDataReader import RipollSanchezDataReader
from cect.RipollSanchezDataReader import RipollSanchezDataReader, get_filename
from cect.ConnectomeDataset import get_dataset_source_on_github
from cect.ConnectomeReader import analyse_connections

MODEL = "long_range_model"


def get_instance():
"""Uses ``RipollSanchezDataReader`` to load data on the long range model of neuropedtidergic connectome

Returns:
RipollSanchezDataReader: The initialised connectome reader
"""
return RipollSanchezDataReader("long_range_model")

return RipollSanchezDataReader(MODEL)

my_instance = get_instance()

"""
read_data = my_instance.read_data
read_muscle_data = my_instance.read_muscle_data
read_muscle_data = my_instance.read_muscle_data"""


READER_DESCRIPTION = (
"""Data extracted from %s for long range model of neuropedtidergic connectome"""
% get_dataset_source_on_github(my_instance.filename.split("/")[-1])
% get_dataset_source_on_github(get_filename(MODEL).split("/")[-1])
)


def main1():
cells, neuron_conns = read_data()
neurons2muscles, muscles, muscle_conns = read_muscle_data()
my_instance = get_instance()
cells, neuron_conns = my_instance.read_data()
neurons2muscles, muscles, muscle_conns = my_instance.read_muscle_data()

analyse_connections(cells, neuron_conns, neurons2muscles, muscles, muscle_conns)

Expand Down
Loading