АвторТема: Калькулятор ВБОП на сайте Semargl.ME  (Прочитано 24503 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн SemarglАвтор темы

  • "El sueño de la razón produce monstruos" ©
  • Модератор
  • *****
  • Сообщений: 5993
  • Страна: ru
  • Рейтинг +4191/-5
  • www.semargl.me
    • www.semargl.me
  • Y-ДНК: R1a [CTS3402+]
  • мтДНК: U4a2g
Калькулятор ВБОП на сайте Semargl.ME
« : 08 Апрель 2012, 15:40:29 »
Доброго времени! Предложение очень хорошее.
Мне непонятен один момент:
Цитировать
А именно, для каждого гаплотипа должен быть указан условный номер ветви на филогенетическом дереве, которое должно быть заранее построено по данной совокупности гаплотипов.
Если возможно - прошу чуть подробнее обрисовать ситуацию.
Каким бы Вы хотели бы видеть это веб-приложение? С точки зрения пользовательского интерфейса.
Вопрос понял, подумаю. Исходник программы расчета, написанный на "С", перешлю. Правда, я не профессиональный программист. Но это консольное приложение, несмотря на корявость текста, который Вам придется перетряхнуть, работает.
Спасибо.
Есть один нюанс.
Чтоб интегрировать Ваше приложение в мой сервис - его надо переписать на питоне (сишное приложение я не смогу интегрировать).
Для этого мне нужен алгоритм работы программы, применяемые формулы расчета и тд.

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #1 : 08 Апрель 2012, 16:26:51 »
Доброго времени! Предложение очень хорошее.
Мне непонятен один момент:
Цитировать
А именно, для каждого гаплотипа должен быть указан условный номер ветви на филогенетическом дереве, которое должно быть заранее построено по данной совокупности гаплотипов.
Если возможно - прошу чуть подробнее обрисовать ситуацию.
Каким бы Вы хотели бы видеть это веб-приложение? С точки зрения пользовательского интерфейса.
Вопрос понял, подумаю. Исходник программы расчета, написанный на "С", перешлю. Правда, я не профессиональный программист. Но это консольное приложение, несмотря на корявость текста, который Вам придется перетряхнуть, работает.
Спасибо.
Есть один нюанс.
Чтоб интегрировать Ваше приложение в мой сервис - его надо переписать на питоне (сишное приложение я не смогу интегрировать).
Для этого мне нужен алгоритм работы программы, применяемые формулы расчета и тд.
Ну а если я исходник с внутренними комментариями дам? Если нужно, напишу дополнительные объяснения. Как такой вариант?

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #2 : 09 Апрель 2012, 15:47:55 »
Нашел толстую книгу с описанием языка "Python" . В общем, попробую переделать программу с "С" на этот самый "Python". В его конструкциях есть что-то от "С", что-то от МАТЛАБа. Вполне понятно. Одна неприятная хрень: оператор цикла или условный оператор никак не заканчиваются (нет ни операторной скобки, на служебного слова типа "end"). В результате надо ориентироваться только на отступы. Вот это мне совершенно непонятно! А если я у меня, скажем,  вложенные циклы? Как мне с этими отступами разобраться, непонятно.
Да, и вот что еще: самой среды для запуска скрипта у меня нет.

Оффлайн Anode

  • Группа N
  • *
  • Сообщений: 1423
  • Страна: ca
  • Рейтинг +147/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #3 : 10 Апрель 2012, 00:00:32 »
Нашел толстую книгу с описанием языка "Python" . В общем, попробую переделать программу с "С" на этот самый "Python". В его конструкциях есть что-то от "С", что-то от МАТЛАБа. Вполне понятно. Одна неприятная хрень: оператор цикла или условный оператор никак не заканчиваются (нет ни операторной скобки, на служебного слова типа "end"). В результате надо ориентироваться только на отступы. Вот это мне совершенно непонятно! А если я у меня, скажем,  вложенные циклы? Как мне с этими отступами разобраться, непонятно.
Да, и вот что еще: самой среды для запуска скрипта у меня нет.

В Питоне именно отступы и определяют границу оператора.
Вот эти отступы - и есть самая большая психологическая проблема для "скобочников", кто привык к свободе в "белых" символах и переносах строк. Мне эти ограничения (и не только они) в своё время очень помешали научится питону, так его и не осилил.
В си-подобных да и почти всех других языках, включая скриптовые - есть видимый токен который явным образом ограничивает оператор. Т.е. можно форматнуть весь текст программы каким-нибудь скриптом, программой, утилитой, автоматически выровнять её, или даже поставить всё в одну строку (для скорости, в случае с прострыми шелл-скриптом).
А в Питоне надо уделять внимание индентации, пробелам, концам строк (для разный систем - разные!) пользоваться определёнными редакторами (я знаю людей - кто ещё на ed программы писал! ed -  редактор, где видна только одна строка).
Если бы изобретатель питона так не "извращнулся", по сравнению с традиционными языками - думаю что Питон был бы гораздо популярнее.

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #4 : 10 Апрель 2012, 00:25:01 »
Если бы изобретатель питона так не "извращнулся", по сравнению с традиционными языками - думаю что Питон был бы гораздо популярнее.
Вот именно. По крайней мере, ввод-вывод в файл, печать на экран вполне прилично смотрится. Так как у меня по сути простая вычислительная программа с простенькой подкачкой данных из текстового файла, то должно получиться после некоторых мучений. По крайней мере, Семаргл за спиной стоит, выручит (точнее, доделает)  ;D

Оффлайн SemarglАвтор темы

  • "El sueño de la razón produce monstruos" ©
  • Модератор
  • *****
  • Сообщений: 5993
  • Страна: ru
  • Рейтинг +4191/-5
  • www.semargl.me
    • www.semargl.me
  • Y-ДНК: R1a [CTS3402+]
  • мтДНК: U4a2g
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #5 : 10 Апрель 2012, 12:08:13 »
Ну а если я исходник с внутренними комментариями дам? Если нужно, напишу дополнительные объяснения. Как такой вариант?
Вариант хороший)
Жду исходник. Свой е-мейл отправил Вам в личку, еще пару дней назад.

Питон для научных расчетов и статистики - превосходен.
Взгляните на функции, предоставляемые библиотеками numpy и scipy. Немного на русском (только базовые возможности).

[off]
А насчет отступов - это дисциплинирует - читать код становится значительно легче. В любом случае чтение чужого кода, написанного на питоне, значительно легче читать, чем например на перле)))
У перлушников, например, регулярно проводятся соревнования, кто напишет самую заковыристую и нечитаемую другими строку кода.
[/off]

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #6 : 10 Апрель 2012, 12:22:05 »
Свой е-мейл отправил Вам в личку, еще пару дней назад.
Адреса не получил! Пошлите, пожалуйста, еще разок.

Оффлайн SemarglАвтор темы

  • "El sueño de la razón produce monstruos" ©
  • Модератор
  • *****
  • Сообщений: 5993
  • Страна: ru
  • Рейтинг +4191/-5
  • www.semargl.me
    • www.semargl.me
  • Y-ДНК: R1a [CTS3402+]
  • мтДНК: U4a2g
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #7 : 10 Апрель 2012, 12:35:11 »
Отправил.

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #8 : 10 Апрель 2012, 13:26:10 »
Отправил.
Тоже отправил

Оффлайн SemarglАвтор темы

  • "El sueño de la razón produce monstruos" ©
  • Модератор
  • *****
  • Сообщений: 5993
  • Страна: ru
  • Рейтинг +4191/-5
  • www.semargl.me
    • www.semargl.me
  • Y-ДНК: R1a [CTS3402+]
  • мтДНК: U4a2g
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #9 : 12 Апрель 2012, 12:32:52 »
Возможно ли на Форуме создать вычислитель TMRCA? Чтобы можно было загрузить файл с гаплотипами в определенном формате, запустить расчет и получить результат?
Дело в том, что мы вчетвером (Д.Адамов, С.Каржавин, А.Киреев, В.Рудич) разработали метод выборочных пар оценивания TMRCA, исследовали его, и считаем, что но вполне готов для работы. Конечно, остался серьезный момент - расчет калибровочных значений частот мутаций в локусах. Но дело в том, что в основе вычисления TMRCA лежит подсчет количества мутаций, а пересчет их во время, используя частоты мутаций в локусах и среднюю длительность поколений - это вторичная задача, которая никомим образом не зависит от подсчета количества мутаций.
Поэтому данное приложение вполне может завершать свою работу расчетом количества мутаций. Алгоритм Метода выборочных пар несложен, но реализовать его на Экселовском калькуляторе не удастся. Поэтому создать какой-то для всех доступный скрипт, наверное, не получится.
Совместно с уважаемым Сергеем Каржавиным, закончили портирование его программы на Python.
В скором времени "прикручу" на сайт.
Расчеты осуществляются как классическим методом ASD, так и методом выборочных пар.
Нужна будет помощь в составлении инструкции пользователя, как на русском, так и на английском языках.

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #10 : 12 Апрель 2012, 14:15:45 »
Возможно ли на Форуме создать вычислитель TMRCA? Чтобы можно было загрузить файл с гаплотипами в определенном формате, запустить расчет и получить результат?
Дело в том, что мы вчетвером (Д.Адамов, С.Каржавин, А.Киреев, В.Рудич) разработали метод выборочных пар оценивания TMRCA, исследовали его, и считаем, что но вполне готов для работы. Конечно, остался серьезный момент - расчет калибровочных значений частот мутаций в локусах. Но дело в том, что в основе вычисления TMRCA лежит подсчет количества мутаций, а пересчет их во время, используя частоты мутаций в локусах и среднюю длительность поколений - это вторичная задача, которая никомим образом не зависит от подсчета количества мутаций.
Поэтому данное приложение вполне может завершать свою работу расчетом количества мутаций. Алгоритм Метода выборочных пар несложен, но реализовать его на Экселовском калькуляторе не удастся. Поэтому создать какой-то для всех доступный скрипт, наверное, не получится.
Совместно с уважаемым Сергеем Каржавиным, закончили портирование его программы на Python.
В скором времени "прикручу" на сайт.
Расчеты осуществляются как классическим методом ASD, так и методом выборочных пар.
Нужна будет помощь в составлении инструкции пользователя, как на русском, так и на английском языках.
Надеюсь, уважаемый Nimissin будет не против, то можно еще и линейный метод прикрутить

Оффлайн Nimissin

  • Сообщений: 2400
  • Рейтинг +759/-0
  • Y-ДНК: N-M178 L839+ P298+ M2019+ M2118+ M1991+ M1988+
  • мтДНК: C4b12a
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #11 : 12 Апрель 2012, 14:24:15 »
Я - за.

Оффлайн SemarglАвтор темы

  • "El sueño de la razón produce monstruos" ©
  • Модератор
  • *****
  • Сообщений: 5993
  • Страна: ru
  • Рейтинг +4191/-5
  • www.semargl.me
    • www.semargl.me
  • Y-ДНК: R1a [CTS3402+]
  • мтДНК: U4a2g
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #12 : 12 Апрель 2012, 16:36:10 »
По черновому подключил новый модуль к сайту.
Можно попробовать. Ну и приветствуются пожелания о выводе какой-либо дополнительной информации.
"Красивости" будут позднее.
Ссылки, в меню сайта, на новый модуль нет. Попасть можно только по прямой ссылке, приведенной выше.

Входной текст должен выглядеть следующим образом:
Цитировать
82383;ODell;1;13;25;17;10;11;14;12;12;10;14;11;17;15;9;9;11;11;25;14;20;31;12;15;15;16;11;11;19;23;17;16;17;17;37;38;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
31343;Woodall;1;13;25;16;8;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;12;11;19;23;17;16;17;17;36;38;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
29614;Woodall;1;13;25;16;9;11;11;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;11;11;19;23;17;16;17;18;36;38;12;11;11;8;17;17;8;11;10;8;10;10;12;22;22;15;10;12;12;13;8;13;25;21;12;12;11;13;11;11;12;13
GXBHR;Woodall;1;13;25;16;8;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;12;11;19;23;17;16;17;17;36;38;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
139617;Woodall;1;13;25;16;9;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;11;11;19;23;17;16;17;19;36;38;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
111561;Odell;1;13;25;16;9;11;14;12;12;10;14;11;16;15;9;9;11;11;24;14;20;32;12;15;16;16;11;11;19;23;17;16;17;17;37;39;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
18481;Farr;1;13;25;16;9;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;11;11;19;23;17;16;17;17;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
209027;Odell;1;13;25;16;10;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;11;11;19;23;17;16;17;17;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;14;8;13;25;21;12;12;11;13;11;11;12;13
119996;Woodall;1;13;25;16;9;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;11;11;19;23;17;16;17;17;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;22;12;12;11;13;11;11;12;13
36335;Woodell;1;13;25;16;9;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;31;12;15;15;16;11;11;19;23;17;16;17;17;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;25;21;12;12;11;13;11;11;12;13
181201;Bellon;2;13;25;15;11;11;14;12;12;10;14;11;17;15;9;10;11;11;24;14;20;33;12;15;15;15;11;11;19;19;16;15;17;20;35;38;12;11;11;8;17;17;8;12;10;8;10;10;12;21;22;15;10;12;12;14;8;14;23;21;12;12;10;13;11;11;11;13
91748;Palii;2;13;25;17;10;11;14;12;12;10;14;11;17;15;9;10;11;11;24;14;20;32;12;15;15;16;11;11;19;23;17;15;17;20;35;38;12;11;11;8;17;17;8;12;10;8;10;10;12;21;22;15;10;12;12;13;8;14;23;22;12;12;11;13;11;11;12;13
N14048;Berezik;2;13;25;16;11;11;14;12;12;10;14;11;17;15;9;10;11;11;24;14;20;32;12;15;16;16;11;11;19;23;16;15;18;19;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;21;22;15;10;12;12;13;8;14;23;21;12;12;11;13;11;11;12;13
N6668;Berezik;2;13;25;16;11;11;14;12;12;10;14;11;17;15;9;10;11;11;24;14;20;32;12;15;16;16;11;11;19;23;16;15;17;19;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;21;22;15;10;12;12;13;8;14;23;21;12;12;11;13;11;11;12;13
211347;Kotwicki;2;13;25;16;11;10;14;12;12;10;14;11;16;16;9;10;11;11;24;14;20;32;12;15;15;16;10;11;19;23;16;15;18;20;36;39;12;11;11;8;17;17;8;12;10;8;10;10;12;22;22;15;10;12;12;13;8;14;23;21;11;12;11;13;11;11;12;13
N78924;Meszaros;2;13;25;16;11;11;14;12;12;10;14;11;17;15;9;9;11;11;24;14;20;33;12;15;15;16;11;11;19;23;16;15;17;20;35;39;12;11;12;8;17;17;8;12;10;8;10;10;12;22;22;16;10;12;12;13;8;14;23;21;12;12;11;13;11;11;12;13
То есть, это обычный формат csv файлов. В качестве разделителя применяется ';'.
Никаких заголовков быть не должно. С самой первой строки - только ваши данные.
Первый столбец - номер кит. (может быть пустой)
Второй - имя. (может быть пустой)
Третий - номер или название ветви. (обязателен)
Начиная с четвертого столбца и "до упора" - значения маркеров.
Количество маркеров, во всех строках, должно быть одинаковым, не должно отсутствовать, и не должно быть равным 0.
После последнего маркера, в конце каждой строки, точки с запятой быть не должно!

Как совет (имхо): гаплотипы с реклохом, делециями, многошаговыми мутациями и тп для расчетов лучше не применять.

Программа сама посчитает количество введенных гаплотипов и маркеров.

Чуть позднее перенесу часть сообщений, относящихся к подсчету ВБОП в общие темы.
« Последнее редактирование: 15 Ноябрь 2016, 21:18:50 от Lesla »

Оффлайн Каржавин

  • ...
  • Сообщений: 1798
  • Рейтинг +144/-2
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #13 : 12 Апрель 2012, 17:28:11 »
Ув. Семаргл,
послал Nimissin'у текст программы вычисления кол-ва мутаций линейным методом. Жду от него замеченных неточностей. Как только получу ответ, исправлю их и перешлю текст программы Вам.

Оффлайн SemarglАвтор темы

  • "El sueño de la razón produce monstruos" ©
  • Модератор
  • *****
  • Сообщений: 5993
  • Страна: ru
  • Рейтинг +4191/-5
  • www.semargl.me
    • www.semargl.me
  • Y-ДНК: R1a [CTS3402+]
  • мтДНК: U4a2g
Re: Калькулятор ВБОП на сайте Semargl.ME
« Ответ #14 : 24 Апрель 2012, 10:44:21 »
По черновому подключил новый модуль к сайту.
Можно попробовать. Ну и приветствуются пожелания о выводе какой-либо дополнительной информации.
"Красивости" будут позднее.
Модуль запущен в эксплуатацию)

PS Касаемо линейного метода - постараюсь реализовать в ближайшее время.

 

© 2007 Молекулярная Генеалогия (МолГен)

Внимание! Все сообщения отражают только мнения их авторов.
Все права на материалы принадлежат их авторам (владельцам) и сетевым изданиям, с которых они взяты.