Bazy danych i R/Bioconductor



Podobne dokumenty
BIOLOGICZNE BAZY DANYCH (1) GENOMY I ICH ADNOTACJE

BIOLOGICZNE BAZY DANYCH (2) GENOMY I ICH ADNOTACJE. Podstawy Bioinformatyki wykład 4

Bazy danych i R/Bioconductor

Baza danych sql. 1. Wprowadzenie. 2. Repozytaria generyczne

Bioinformatyka. Michał Bereta

Bioinformatyka. Ocena wiarygodności dopasowania sekwencji.

BIOLOGICZNE BAZY DANYCH GENOMY I ICH ADNOTACJE. Pracownia Informatyczna 2

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Sekwencjonowanie Nowej Generacji ang. Next Generation Sequencing. Wykład 6 Część 1 NGS - wstęp Dr Wioleta Drobik-Czwarno

Baza danych sql. 1. Wprowadzenie

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

2017/2018 WGGiOS AGH. LibreOffice Base

Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki. Paweł Parys. Nr albumu: Aukcjomat

Propozycja standaryzacji usługi lokalizacji adresu

Wprowadzenie do Doctrine ORM

Dostęp do baz danych przy wykorzystaniu interfejsu ROracle i biblioteki Shiny

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

22. Podstawowe pojęcia baz danych. Baza Danych. Funkcje bazy danych. Właściwości bazy danych. Modele baz danych.

Bioinformatyczne bazy danych - część 2. -przeszukiwanie baz danych -pobieranie danych

enova Systemowe Narzędzia Projektowe

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod:

Kostki OLAP i język MDX

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Tryb konsolowy ćwiczenie b

Bioinformatyka. Michał Bereta

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

PRZEWODNIK PO PRZEDMIOCIE

Tworzenie oprogramowania

KONCEPCJA STANDARYZACJI USŁUGI LOKALIZACJI PRZESTRZENNEJ ADRESÓW

Microsoft Access materiały pomocnicze do ćwiczeń cz. 1

PHP: bazy danych, SQL, AJAX i JSON

Pierwsze kroki. Algorytmy, niektóre zasady programowania, kompilacja, pierwszy program i jego struktura

Migracja do PostgreSQL za pomocą narzędzi Enterprise DB

Bazy danych - wykład wstępny

Aplikacje Internetowe, Servlety, JSP i JDBC

Przeglądarki genomowe

SQL Server Analysis Services Procedury składowane. Grzegorz Stolecki

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Plan. Formularz i jego typy. Tworzenie formularza. Co to jest formularz? Typy formularzy Tworzenie prostego formularza Budowa prostego formularza

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Wprowadzenie do projektu QualitySpy

System zarządzania firmą specyfikacja techniczna.

Zadanie nr 4.5: Oprogramowanie bazodanowe. Lp. Zwartość karty Opis 1 Specyfikacja techniczna / funkcjonalna przedmiotu zamówienia

PROGRAM NAUCZANIA DLA ZAWODU TECHNIK INFORMATYK, O STRUKTURZE PRZEDMIOTOWEJ

ZESTAW 1 SAS 4GL. Język stworzony na potrzeby przetwarzania dużych zbiorów danych. Składają się nań:

Generowanie raportów

ADNOTACJE WARIANTÓW GENETYCZNYCH

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI

Modele danych walidacja widoki zorientowane na model

Przedmiotem zamówienia jest dostawa:

PODSTAWY BIOINFORMATYKI 12 MIKROMACIERZE

Rys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom:

Specyfikacja API Runtime BAS 3.0

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8

JDBC w LoXiMie. Interfejs Java Database Connectivity dla systemu LoXiM. Adam Michalik 2008

STWORZENIE BIBLIOTEKI SŁUŻĄCEJ DO WCZYTYWANIA

Materiały do laboratorium MS ACCESS BASIC

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Programowanie współbieżne i rozproszone

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Proces ETL MS SQL Server Integration Services (SSIS)

Raport dotyczący przeprowadzonych zmian w aplikacji

KARTA PRZEDMIOTU. Internetowe aplikacje bazodanowe D1_12

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia.

Pliki zorganizowano w strukturze drzewiastej odzwierciedlając strukturę logiczną aplikacji:

Procedura aktualizacji systemu TelkomBud. dla serwera DBfC w wersji 4.x

Serwery LDAP w środowisku produktów w Oracle

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Dodawanie operacji dodatkowych w WAPRO Mag.

Kolumna Zeszyt Komórka Wiersz Tabela arkusza Zakładki arkuszy

Scenariusze obsługi danych MPZP

Instrukcja obsługi Multiconverter 2.0

Zaawansowane aplikacje internetowe

OPTIMA PC v Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA ELFON. Instrukcja obsługi. Rev 1

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

Specyfikacja implementacyjna aplikacji serwerowej

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Instrukcja obsługi DHL KONWERTER 1.6

Specyfikacja implementacyjna aplikacji mobilnej

Projekt: MS i CISCO dla Śląska

Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi

Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript

REFERAT PRACY DYPLMOWEJ. Temat pracy: Projekt i realizacja warstwy serwerowej gry internetowej

(aktualizacja 30 kwietnia 2018)

OPROGRAMOWANIE KEMAS zbudowane jest na platformie KEMAS NET

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne


PROJEKT CZĘŚCIOWO FINANSOWANY PRZEZ UNIĘ EUROPEJSKĄ. Opis działania raportów w ClearQuest

Bazy danych. wprowadzenie teoretyczne. Piotr Prekurat 1

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

Aplikacja webowa w Javie szybkie programowanie biznesowych aplikacji Spring Boot + Vaadin

HELIOS pomoc społeczna

Zaawansowane aplikacje WWW - laboratorium

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

Ekspert MS SQL Server Oferta nr 00/08

Co to jest NODE.JS? Nowoczesne środowisko programistyczne

Java pierwszy program w Eclipse «Grzegorz Góralski strona własna

Transkrypt:

Bazy danych i R/Bioconductor Praca z pakietem biomart

Zagadnienia RStudio Oprogramowanie BioMart Pakiet biomart wprowadzenie funkcje biomart przykładowe zastosowania

RStudio

RStudio http://www.rstudio.com/

KOD ZMIENNE ctrl +ENTER GRAFIKA KONSOLA POMOC

Instalacja pakietów Bioconductor Poprzez panel pomocniczy Poprzez konsolę Instalacja pakietu install.packages("limma") Uruchomienie pakietu library( limma ) Działa tylko gdy wskazane odpowiednie repozytorium!!!

Instalacja pakietów Bioconductor Instalacja pakietu ze wskazaniem repozytorium source( "http://www.bioconductor.org/bioclite.r") bioclite( GenomeGraphs )

Instalacja pakietów Bioconductor Instalacja pakietu ze wskazaniem repozytorium source( "http://www.bioconductor.org/bioclite.r") bioclite( GenomeGraphs )

Instalacja pakietów Bioconductor Wybór repozytorium setrepositories() 1: + CRAN 2: BioC software 3: BioC annotation 4: BioC experiment 5: BioC extra 6: CRAN (extras) 7: Omegahat 8: R-Forge 9: rforge.net Instalacja poprzez konsolę lub panel pomocniczy

BioMart

BioMart = Data mining BioMart to system zarządzania danymi pełniący rolę wyszukiwarki, która pozwala na wykonanie skomplikowanych zapytao (łączy różne kryteria wyszukiwania) i prezentuje wyniki w formie tabeli Rozwijany wspólnie przez the European Bioinformatics Institute (EBI) i Cold Spring Harbor Laboratory (CSHL) Pierwotnie stworzony na potrzeby projektu Ensembl, obecnie ma generalne zastosowania

Dostęp Różnorodne możliwości dostępu do BioMart: aplikacje web-owe, graficzne, tekstowe biblioteki Perl, Java, R http://www.biomart.org Nie wymaga umiejętności programistycznych

Bazy danych z zaimplementowanym systemem BioMart Ensembl / Ensembl plants Wormbase HapMap Gramene UniProt Nadają się dobrze do zapytao seryjnych (batch queries)

Zapytania BioMart

Database Dataset

Zapytania BioMart Co? Attributes Skąd? Mart A konkretnie? Filters, Values

Realizacja złożonych zapytao Query Engine

biomart

Pakiet biomart Interfejs R dla baz danych posiadających zaimplementowany system BioMart Łączy się z bazami i wykonuje zapytania online Może zwracad duże zestawy danych wg różnych kryteriów Nie wymaga znajomości struktury baz danych i składni zapytao SQL Dzięki pracy w środowisku R mamy możliwośd bezpośredniego wykorzystania danych do dalszej pracy

Podstawowe informacje Obecna wersja 2.24 Wymaga bibliotek: utils, XML, RCurl, AnnotationDbi Strona pakietu w repozytorium Bioconductor http://www.bioconductor.org/packages/release/bioc/ html/biomart.html

Krok 1: Wybór bazy danych Każdą analizę rozpoczynamy od wskazania bazy danych, z której chcemy pozyskad informacje Wyświetlenie dostępnych baz danych listmarts() Funkcja zwraca listę baz danych lub ograniczone do baz Ensembl: listensembl() Połączenie z bazą danych usemart(biomart, dataset)

Krok 2: Wybór zestawu danych Bazy BioMart mogą zawierad różne zestawy danych, np. w Ensembl każdy gatunek tworzy oddzielny zestaw danych Wyświetlenie zestawów danych dostępnych dla danej bazy listdatasets(mart) Funkcja zwraca listę zestawów danych (nazwa-opis- wersja) Wybór zestawu danych usedataset(dataset, mart)

Krok 3: Filtry Filtry ograniczają obszar danych odpytywanej bazy listfilters(mart) Funkcja zwraca listę filtrów dostępnych dla danej bazy np. etc. który chromosom, koordynaty genomowe konkretny gen id sondy na mikromacierzy tylko pozycje zawierające adnotacje GO tylko pozycje posiadające id w bazie mirbase

Filtry mogą mied różne typy (numeryczne, ciągi znaków, boolowskie) filtertype(filter,mart) filtertype("chromosome_name", ensembl) filtertype("affy_hg_u133_plus_2", ensembl) filtertype("with_affy_hg_u133_plus_2", ensembl) Filtry mogą mied różne opcje (predefiniowane wartości filteroptions(filter,mart) filteroptions("biotype", ensembl) filteroptions("("chromosome_name", ensembl)

Krok 4: Atrybuty Atrybuty określają jakie informacje chcemy pozyskad z bazy listattributes(mart, page) Funkcja zwraca listę atrybutów dostępnych dla danej bazy np. ID genu koordynaty genomowe opis etc. Lista atrybutów może byd długa, więc są one podzielone na grupy (pages) attributepages(mart)

Kompilacja: funkcja getbm getbm to podstawowa funkcja zapytań w biomart. Argumenty: attributes: wektor atrybutów które chcemy pozyskad (=output). filters: kryteria zapytania (=input). values: parametry dla podanych wyżej kryteriów. mart: obiekt klasy mart utworzony przy pomocy funkcji usemart (źródło danych: baza i zestaw) affyids=c("202763_at","209310_s_at","207500_at") getbm(attributes=c('affy_hg_u133_plus_2', 'entrezgene'), filters = 'affy_hg_u133_plus_2', values = affyids, mart = ensembl)

Stosowanie wielu filtrów Funkcja getbm może byd użyta z wieloma filtrami Filtry należy podad jako wektor Wartości powinny byd listą wektorów, przy czym kolejnośd wektorów argumentu values powinna byd zgodna z kolejnością wektorów argumentu filters

Funkcje specjalne Funkcje getgene oraz getsequence wywołują funkcję getbm z zakodowanym zestawem pewnych parametrów

getgene getgene( id, type, mart) getgene zwraca adnotacje genów z Ensembl wybranych na podstawie podanych identyfikatorów id: konkretny identyfikator type: typ identyfikatora = values = filters mart: obiekt klasy mart utworzony przy pomocy funkcji usemart (źródło danych: baza i zestaw) g1 = getgene( id = "1939_at", type = "affy_hg_u95av2", mart = ensembl) g2 = getgene( id = "100", type = "entrezgene", mart = ensembl)

getsequence getsequence(chromosome, start, end, id, type, seqtype, upstream, downstream, mart) getsequence służy do pozyskiwania sekwencji z Ensembl w sposób prostszy niż przy pomocy getbm wskazanie albo wg chromosome, start, end albo wg id seqtype: cdna, peptide, 3utr, 5utr, genomic type: hugo, ensembl, embl, entrezgene, refseq, ensembltrans, unigene seq1 = getsequence(id="brca1", type="hgnc_symbol", seqtype="peptide", mart = mart) seq2 = getsequence(id="1939_at", type="affy_hg_u95av2", seqtype="gene_flank", upstream = 20, mart = mart)

exportfasta exportfasta(sequences, file) funkcja służy do zapisania sekwencji (wyniku funkcji getsequence) w formacie fasta

Przykładowe zapytania

Adnotacja sond mikromacierzowych wg Ensembl Ensembl ma własną ścieżkę adnotacji mikromacierzy(affymetrix, Illumina, Agilent, ) Adnotacja do sekwencji genomowej oraz cdna (do detekcji sond pokrywających miejsca splicingowe) Oba mapowania przechowywane jako (gapped) alignment do sekwencji genomu -> ProbeFeatures W przypadku zestawów Affy wymagane aby co najmniej 50% sond w zestawie mapowało się do danego transkryptu (wartośd obliczna dla mkażdego zestawu oddzielnie) Dozwolone maksymalnie 1 niesparowanie Gdy nie ma wyraźnego linku lub co najmniej 100 dopasowao (np. sekwencje Alu) sonda jest odrzucana Zmapowana sonda / zestaw sond jest adnotowany do transkryptu jeśli pokrywa się z eksonem lub regionem UTR (maks. 1 mismatch)

Zapytanie 1 Jaka jest lokalizacja na chromosomie oraz symbole w nomenklaturze HUGO genów ludzkich reprezentowanych przez następujące sondy na platformie Affymetrix human u133plus2: 211550_at, 202431_s_at, 206044_s_at mart filters values attributes

mart: hsapiens_gene_ensembl filters: affy_hg_u133_plus_2 values: 211550_at, 202431_s_at, 206044_s_at attributes: affy_hg_u133_plus_2, ensembl_gene_id chromosome_name, start_position, end_position, band, strand hgnc_symbol

>getbm(attributes=c("affy_hg_u133_plus_2","ensembl_gene_id"," hgnc_symbol","chromosome_name","start_position","end_position ","band","strand"), filters="affy_hg_u133_plus_2", values= c("211550_at","202431_s_at","206044_s_at"), mart = ensembl) affy_hg_u133_plus_2 ensembl_gene_id hgnc_symbol chromosome_name start_position end_position band strand 1 211550_at ENSG00000146648 EGFR 7 55019021 55256620 p11.2 1 2 206044_s_at ENSG00000157764 BRAF 7 140719327 140924764 q34-1 3 202431_s_at ENSG00000136997 MYC 8 127735434 127741434 q24.21 1 >

Zapytanie 2 Jaka jest adnotacja GO dla genów z zapytania 1? ENSG00000146648 ENSG00000157764 ENSG00000136997 geny <- c("ensg00000146648","ensg00000157764","ensg00000136997") query_2 <- getbm(attributes=c("ensembl_gene_id","go_id","name_1006"), filters="ensembl_gene_id", values=geny, mart=ensembl)

Zapytanie 3 Użycie kilku filtrów Pozyskaj symbole HUGO dla genów zlokalizowanych na chromosomach 9, 7, 20 oraz Y, które są powiązane z następującymi terminami GO: "GO:0000902","GO:0000080","GO:0000114", "GO:0004714" go=c("go:0000902","go:0000080","go:0000114","go:0004714") chrom=c(9,7,20,"y") getbm(attributes = "hgnc_symbol", filters=c("go_id","chromosome_name"), values=list(go,chrom), mart=ensembl) getbm(attributes = c("hgnc_symbol","go_id"), filters=c("go_id","chromosome_name"), values=list(go,chrom), mart=ensembl)

Zapytanie 4 Użycie typów filtrów Pozyskaj wszystkie mirna znalezione na chromosomie 15 wraz z ich pozycją na chromosomie mirna <- getbm(c("mirbase_id", "ensembl_gene_id", "start_position", "chromosome_name"), filters=c("chromosome_name", "with_mirbase"), values=list(13,true), mart=ensembl) head(mirna)