-
Notifications
You must be signed in to change notification settings - Fork 5
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
Error reading generic tsv #40
Comments
Hi, thanks for the feedback! It seems that DIA-NN changed some output table columns in the new version. I will adapt to this in the next release. Does setting to "DIA-NN precursor.tsv" still work? Additionally, you can save the reformatted file you have now with the ending .aq_reformat.tsv |
Yes. If I provide the report.tsv from diann1.9.1, and set directllfq to auto detect, directlfq will run the precursor mode. |
Thanks for this feedback, have you tried running the reformatted file as I suggested? I will let you know once the new release is out. |
Yes, the .aq_reformat.tsv with auto detection worked well. Maybe an unrelated question. What is the differences between ms1, ms2 and ms1 + ms2 methods? Are there different computation in ms1+ms2? Or if it is just the reformatting of diann report? Thanks |
Good to hear! Regarding your question: It differs in the input information that is being used to derive the protein quantities. In other words, which columns of the DIANN table will be used for quantification. In MS1 (ms1 only I would not recommend most of the time), it will take only quantities derived from the MS1 profile. MS2 will take only quantity derived from the fragment ions, and MS1 + MS2 will take both quantities. |
So it is like this? MS1
MS1
MS1 + MS2
|
Hi, close - MS1 is correct, but MS2 is more like this: MS2
Precursor.Quantity or Precursor.Normalized in DIA-NN corresponds to -summarized_frag while the column MS1.Area gives the summarized MS1 intensity. You can use the fragment ions in DIA-NN but in my benchmarks the summarized scores performed a bit better. If you still want to use fragment ions, I would not use the fragment.ions.raw, but the fragment.ions.corrected |
Hi, so the newest release now has the .parquet compatibility. Feel free to try it out :) |
Hi,
I am using DIA-NN 1.9.1, so I tried to general a generic tsv (attached). With directlfq 0.2.20 GUI with no setting change, I got the errors below.
directlfq_in.zip
I also get similar error if I run the diann.tsv in your test_data/unit_tests/input_table_formats folder if I change the setting to DIANN precursor MS1 and MS2.
Thanks
HT
below are the error =========================
2024-08-23 15:45:20,642 - directlfq.lfq_manager - INFO - Starting directLFQ analysis.
ERROR:bokeh.server.protocol_handler:error handling message
message: Message 'PATCH-DOC' content: {'events': [{'kind': 'MessageSent', 'msg_type': 'bokeh_event', 'msg_data': {'type': 'event', 'name': 'button_click', 'values': {'type': 'map', 'entries': [['model', {'id': 'p1149'}]]}}}]}
error: TypeError('format not specified in intable_config.yaml!')
Traceback (most recent call last):
File "bokeh\server\protocol_handler.py", line 97, in handle
work = await handler(message, connection)
File "bokeh\server\session.py", line 94, in _needs_document_lock_wrapper
result = func(self, *args, **kwargs)
File "bokeh\server\session.py", line 288, in _handle_patch
message.apply_to_document(self.document, self)
File "bokeh\protocol\messages\patch_doc.py", line 104, in apply_to_document
invoke_with_curdoc(doc, lambda: doc.apply_json_patch(self.payload, setter=setter))
File "bokeh\document\callbacks.py", line 443, in invoke_with_curdoc
return f()
File "bokeh\protocol\messages\patch_doc.py", line 104, in
invoke_with_curdoc(doc, lambda: doc.apply_json_patch(self.payload, setter=setter))
File "bokeh\document\document.py", line 376, in apply_json_patch
DocumentPatchedEvent.handle_event(self, event, setter)
File "bokeh\document\events.py", line 246, in handle_event
event_cls._handle_event(doc, event)
File "bokeh\document\events.py", line 281, in _handle_event
cb(event.msg_data)
File "bokeh\document\callbacks.py", line 390, in trigger_event
model._trigger_event(event)
File "bokeh\util\callback_manager.py", line 113, in _trigger_event
self.document.callbacks.notify_event(cast(Model, self), event, invoke)
File "bokeh\document\callbacks.py", line 260, in notify_event
invoke_with_curdoc(doc, callback_invoker)
File "bokeh\document\callbacks.py", line 443, in invoke_with_curdoc
return f()
File "bokeh\util\callback_manager.py", line 109, in invoke
cast(EventCallbackWithEvent, callback)(event)
File "panel\reactive.py", line 491, in _server_event
self._comm_event(doc, event)
File "panel\reactive.py", line 478, in _comm_event
state._handle_exception(e)
File "panel\io\state.py", line 436, in _handle_exception
raise exception
File "panel\reactive.py", line 476, in _comm_event
self._process_bokeh_event(doc, event)
File "panel\reactive.py", line 413, in _process_bokeh_event
self._process_event(event)
File "panel\widgets\button.py", line 243, in _process_event
self.clicks += 1
File "param\parameterized.py", line 528, in _f
instance_param.set(obj, val)
File "param\parameterized.py", line 530, in _f
return f(self, obj, val)
File "param\parameters.py", line 543, in set
super().set(obj,val)
File "param\parameterized.py", line 530, in _f
return f(self, obj, val)
File "param\parameterized.py", line 1553, in set
obj.param._call_watcher(watcher, event)
File "param\parameterized.py", line 2526, in call_watcher
self._execute_watcher(watcher, (event,))
File "param\parameterized.py", line 2506, in _execute_watcher
watcher.fn(*args, **kwargs)
File "directlfq\dashboard_parts.py", line 331, in run_pipeline
lfq_manager.run_lfq(input_file = input_file, input_type_to_use = input_type_to_use, maximum_number_of_quadratic_ions_to_use_per_protein = 10,
File "directlfq\lfq_manager.py", line 48, in run_lfq
input_df = lfqutils.import_data(input_file=input_file, input_type_to_use=input_type_to_use, filter_dict=filter_dict)
File "directlfq\utils.py", line 807, in import_data
file_to_read = reformat_and_save_input_file(input_file=input_file, input_type_to_use=input_type_to_use, filter_dict=filter_dict)
File "directlfq\utils.py", line 824, in reformat_and_save_input_file
input_type, config_dict_for_type, sep = get_input_type_and_config_dict(input_file, input_type_to_use)
File "directlfq\utils.py", line 890, in get_input_type_and_config_dict
raise TypeError("format not specified in intable_config.yaml!")
TypeError: format not specified in intable_config.yaml!
The text was updated successfully, but these errors were encountered: