[R] Heatmap 시각화 Start

BioinformaticsAndMe






Heatmap?


: 히트맵(heatmap)은 2차원의 데이터를 계층적 클러스터링으로 시각화하는 방법

: 행과 열에 존재하는 데이터 값의 칼라 스케일을 조절하면서, 눈에 띄는 데이터 패턴을 찾고자 함

: R에는 Heatmap을 그릴 수 있는 다양한 패키지들이 존재 (사용자 환경에 따라 익숙한 패키지를 사용하면 됨)

1) heatmap:  R base function, stats package

2) heatmap.2:  gplots R package

3) pheatmap:  pheatmap R package

4) d3heatmap:  d3heatmap R package

# 데이터 준비 df <- scale(mtcars) #scale: 데이터 표준화

df

mpg cyl disp hp drat wt qsec Mazda RX4 0.1508848 -0.1049878 -0.57061982 -0.5350928 0.5675137 -0.610399567 -0.7771651 Mazda RX4 Wag 0.1508848 -0.1049878 -0.57061982 -0.5350928 0.5675137 -0.349785269 -0.4637808 Datsun 710 0.4495434 -1.2248578 -0.99018209 -0.7830405 0.4739996 -0.917004624 0.4260068 Hornet 4 Drive 0.2172534 -0.1049878 0.22009369 -0.5350928 -0.9661175 -0.002299538 0.8904872 Hornet Sportabout -0.2307345 1.0148821 1.04308123 0.4129422 -0.8351978 0.227654255 -0.4637808 Valiant -0.3302874 -0.1049878 -0.04616698 -0.6080186 -1.5646078 0.248094592 1.3269868



1) heatmap() function


: stat 패키지에 내장된 R의 기본 히트맵함수

: heatmap(x, scale = "row")

* x → 숫자 matrix

* scale → 숫자 값들을 row 혹은 column 방향으로 표준화 (Default 값은 row)

# 기본 히트맵 그리기 heatmap(df, scale = "none") # none은 scale 과정 수행 x

#높은 값은 Red 계열, 낮은 값은 Yellow 계열




2) heatmap.2() function


: gplots 패키지로 이전 heatmap() 보다 확장성이 늘어난 히트맵함수

# heatmap.2 히트맵 그리기 install.packages("gplots") library("gplots") heatmap.2(df, scale = "none", col = bluered(100), trace = "none", density.info = "none")




3) pheatmap() function


: pheatmap 패키지로 시각적으로 더 선명하고 깔끔해진 히트맵함수

# pheatmap 히트맵 그리기 install.packages('pheatmap') library("pheatmap") pheatmap(df, cutree_rows = 4)




4) d3heatmap() function


: d3heatmap 패키지로 Interactive하게 결과를 확인할 수 있는 히트맵함수

# d3heatmap 히트맵 그리기 install.packages('d3heatmap') library("d3heatmap") d3heatmap(scale(mtcars), colors = "RdYlBu", k_row = 4, # row 그룹의 숫자 k_col = 2 # column 그룹의 숫자 )






#Reference

1) https://www.datanovia.com/en/lessons/heatmap-in-r-static-and-interactive-visualization/





[R] Heatmap 시각화 End

BioinformaticsAndMe

'R' 카테고리의 다른 글

[R] Excel 읽기/쓰기  (0) 2019.11.05
[R] Merge  (0) 2019.10.30
[R] transform (데이터열생성 함수)  (0) 2019.10.17
[R] subset (데이터추출 함수)  (0) 2019.10.17
[R] p value 보정  (0) 2019.10.14

K-NN(최근접이웃) 알고리즘 Start

BioinformaticsAndMe







What is a K-NN Algorithm?


: K-NN(Nearest Neighbor)는 단순하지만 높은 정확성의 특징으로 널리 사용되는 분류 알고리즘

: K-NN은 사용할 수 있는 모든 경우를 저장하고 Distance measure 등의 유사성에 기반하여, 새로운 정보를 분류하는 단순한 알고리즘

: 객체는 K개의 최근접 이웃 사이에서 가장 공통적인 항목에 할당되는 객체로 과반수 투표에 의해 분류

*예제: 당신은 내가 다음 총선 때 여당과 야당 중 어느 쪽을 지지할지 예측할 수 있는가?

   당신이 나를 전혀 몰라도, 내 주변 이웃들이 지지하는 정당을 안다면, 어느 정도 내 선택을 예측할 수 있다.





How the K-NN algorithm works?


: K-NN에서 K는 가장 가까운 이웃의 수 (이웃의 수는 이 알고리즘의 핵심적인 결정 요인)

: 클래스가 두 개인 경우에서 K는 일반적으로 홀수 (K=1 인 경우의 알고리즘은 가장 가까운 인접 알고리즘이라 함)

: 아래 그림은 노랑색 물음표의 Label을 예측하는 상황에서, K=1인 경우, 물음표에 가장 가까운 이웃의 Label을 물음표에 할당



KNN 알고리즘 아래 3단계로 수행된다

1) 가장 가까운 이웃을 찾기 위해, Distance measure를 사용해 이웃 간의 거리를 계산

*Distance measure: Euclidean distance/Manhattan distance/Minkowski distance

2) 거리가 가까운 이웃들 K개 만큼 찾음

3) 찾아진 이웃들을 다수결 투표 원칙으로 기반하여, 신규 데이터 Label 예측 



#일반적으로 사용되는 Euclidean distance measure





How to choose the optimal value of K?


: 이웃수 K는 K-NN 모델링에서 입력해야 하는 Hyper-parameter

: 일반적으로 K 값이 커질수록 전체 노이즈가 줄어들면서, 모델의 정확도가 커짐 (항상 그런 것은 아님)

: 대부분의 데이터셋에서 K 값은 3~10 정도를 사용
*Cross-validation을 통해, 적합한 K 값을 찾기도 함
: 보통, 클래스 개수가 짝수인 경우에는 홀수 K 값을 선택함







#Reference

1) https://www.datacamp.com/community/tutorials/k-nearest-neighbor-classification-scikit-learn

2) https://www.kdnuggets.com/2019/07/classifying-heart-disease-using-k-nearest-neighbors.html

3) https://ko.wikipedia.org/wiki/K-%EC%B5%9C%EA%B7%BC%EC%A0%91_%EC%9D%B4%EC%9B%83_%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98

4) https://kkokkilkon.tistory.com/14





K-NN(최근접이웃) 알고리즘 End

BioinformaticsAndMe

GWAS Catalog Start

BioinformaticsAndMe








GWAS Catalog


: Genome-wide association studies(GWAS;전장유전체연관분석연구)의 연구 결과들을 종합한 데이터베이스

: 미국 NHGRI(National Human Genome Research Institute) + 유럽 EBI(European Bioinformatics Institute) 주관

: 2019년10월14일 기준으로, 7796개 논문을 기반으로 159202개의 SNP 정보 보유 (p value < 1x10^5)

*Genome Assembly GRCh38.p12, dbSNP Build 151

: Cancer를 포함하여 17개의 인간 형질 범주로 SNP를 분류함

https://www.ebi.ac.uk/gwas/






GWAS Catalog 살펴보기


: 'rs7329174' SNP의 GWAS 결과를 예로 살펴보자

: 해당 SNP의 genome position, gene, allele frequency 등의 정보들이 출력



: 아래 Association 결과 테이블을 살펴보면,

1) Variant and risk allele: 연관된 SNP ID 및 변이된 뉴클레오티드

2) P-value: 해당 스터디에서 계산된 유의확률

3) P-value annotation: 해당 스터디에서 이용된 인구 집단

4) RAF: Risk Allele Frequency

5) OR: Odds Ratio

6) Beta: Beta-coefficient

7) CI: Confidence Interval(신뢰구간)

8) Mapped gene: 해당 SNP와 연관된 유전자

9) Reported trait: 해당 스터디에서 연구된 특성(Ontology개념)

10) Trait: 해당 스터디에서 연구된 특성

11) Study accession: 결과를 수집한 스터디 정보

12) Location: Genome에서 해당 SNP 위치





#Reference

1) https://www.ebi.ac.uk/gwas/

2) https://en.wikipedia.org/wiki/GWAS_Catalog

3) http://www.incodom.kr/GWASCatalog

4) https://www.revespcardiol.org/en-challenges-controversies-in-hypertrophic-cardiomyopathy-articulo-S1885585717303742




GWAS Catalog End

BioinformaticsAndMe

Point mutation vs Frameshift mutation Start

BioinformaticsAndMe






Point mutation (점 돌연변이)


: DNA sequence에서 한 개의 염기가 변화된 돌연변이

: 점 돌연변이는 코돈 정보를 파괴하거나 변형시킴




1. Silent mutation (침묵 돌연변이)

- 점 돌연변이가 일어난 염기를 번역했을 때, 아미노산의 변화가 없음

- 침묵 돌연변이는 생물체에 영향 X


2. Missense mutation (과오 돌연변이)

- 점 돌연변이가 일어난 염기를 번역했을 때, 아미노산의 변화가 발생

*단백질 기능에 큰 영향을 미침: Missense mutation(과오 돌연변이)

*단백질 기능에 큰 영향이 없음: Neutral mutation(중립 돌연변이)

-아미노산이 변화해 단백질 기능에 영향을 미침


3. Nonsense mutation (넌센스 돌연변이)

- 점 돌연변이가 암호화 부위 중간에 새로운 종결 코돈을 만들어냄

*새롭게 생긴 종결 코돈에 의해 단백질 합성이 조기에 멈춤

- 정상보다 짧은 폴리펩티드 합성으로,  단백질 기능에 영향을 미침





Framsehift mutation (틀이동 돌연변이)


: 암호화 부위에 염기가 첨가(Insertion) 또는 결실(Deletion)이 발생하는 돌연변이

: 틀이동 돌연변이에 의해 리보솜의 번역틀이 바뀜

: 첨가 또는 결실 부위 이후로 번역되는 아미노산들은 모두 변형됨





Point mutation vs Frameshift mutation


 

Point mutation

Frameshift mutation 

정의

유전자의 단일 뉴클레오티드 변형하는 돌연변이

유전자의 ORF(Open Reading Frame)을 변형하는 돌연변이

변형된염기

단일

다수

변형형태

치환

삽입/결실

영향

Silent/Missense/Nonsense

단백질 ORF 변형

질병

Sickle cell anemia (겸상적혈구빈혈증)

Tay-Sachs disease (테이삭스병)







#Reference

1) https://en.wikipedia.org/wiki/Point_mutation

2) https://pediaa.com/difference-between-point-mutation-and-frameshift-mutation/

3) https://www.yourgenome.org/facts/what-types-of-mutation-are-there

4) https://ko.wikipedia.org/wiki/%EC%A0%90_%EB%8F%8C%EC%97%B0%EB%B3%80%EC%9D%B4

5) https://slideplayer.com/slide/10612053/




Point mutation vs Frameshift mutation End

BioinformaticsAndMe



'Biology' 카테고리의 다른 글

바이러스 (Virus)  (0) 2019.10.27
암 (Cancer)  (0) 2019.10.24
비타민 (Vitamin)  (0) 2019.10.17
화학결합 (Chemical bond)  (0) 2019.10.17
ABO식 혈액형 (ABO blood group)  (0) 2019.10.14

[Western blotting] 웨스턴 블로팅 Start

BioinformaticsAndMe






Western blot (웨스턴 블롯)


: 웨스턴 블롯은 특정 샘플 내에서 단백질 유무 또는 양을 확인하기 위한 분석 방법

: 웨스턴 블롯은 단백질-단백질 사이의 상호작용에 기반

→ 서던 블롯: DNA-DNA

→ 노던 블롯: DNA-RNA

: 주로 항원-항체(Antigen-Antibody) 반응을 사용하기에 매우 높이 특이성을 가짐

→ 항원-항체 반응으로 타겟하는 특정 단백질을 검출





Western blot 실험 과정


1. 세포들을 파쇄한 후, 추출한 단백질을 SDS-PAGE 수행

*SDS-PAGE(Sodium dodecyl sulphate-polyacrylamide gel electrophoresis): 단백질 질량 차이에 따른 분리 방법

2. 단백질을 겔에서 멤브레인 막으로 옮김

3. 블로킹 과정을 통해 코팅을 해주어, 불필요한 것들을 붙지 않게함

4. 1차 항체반응

*1차 항체는 찾고자 하는 단백질에 특이적으로 붙도록 디자인

5. 결합하지 않은 항체들을 씻어냄

6. 2차 항체반응

*2차 항체는 눈으로 확인하기 위해 사용됨

*2차 항체는 신호를 증폭시키는 효과 존재

7. 결합하지 않은 항체들을 씻어냄

8. 발색 반응을 일으켜서 밴드를 감별함






# 웨스턴 블로팅 실험 영상







#Reference
1) https://ko.wikipedia.org/wiki/%EC%9B%A8%EC%8A%A4%ED%84%B4_%EB%B8%94%EB%9E%8F
2) http://www.dynebio.co.kr/yc/bbs/board.php?bo_table=data1&wr_id=14&sst=wr_hit&sod=desc&sop=and&page=1
3) https://www.novusbio.com/application/western-blotting
4) https://www.youtube.com/watch?v=GJJGNOdhP8w



[Western blotting] 웨스턴 블로팅 End

BioinformaticsAndMe

'Technology' 카테고리의 다른 글

[Mircoarray] DNA 미세배열  (0) 2019.11.05
[DNA sequencing] 생어 염기서열 분석  (0) 2019.10.28
[PCR] 중합효소 연쇄반응  (0) 2019.10.14
[Northern blotting] 노던 블로팅  (0) 2019.10.09
[Southern blotting] 서던 블로팅  (0) 2019.10.01

경향분석 (Cochran-Armitage Trend test) Start

BioinformaticsAndMe






Cochran–Armitage test for trend (경향분석)


: William Cochran와 Peter Armitage가 고안해낸 명목형 변수의 경향성 분석 방법 

: 순서를 가진 카테고리 2xk 분할표를 가질 때, 둘 사이의 연관관계 여부를 검정하기 위해 사용

: 아래는 약물 복용량(Dose)에 따라 부작용(Adverse) 비율이 증가 혹은 감소하는지 경향분석으로 검정 가능





Cochran-Armitage Trend test R 예제


: 아래 표는 우울증 약 복용량을 'Low/Medium/High'로, 우울증의 치료되는 정도를 'Good/Bad' 분류함

 

Low

Medium 

High 

Good 

12

8

25

Bad

31

9

10

전체

43

17 

35 

비율

0.28 (=12/43)

0.47 (=8/17)

0.71 (=25/35)


: 우울증 약 복용량에 따라 좋아지는 Good의 비율이 증가 혹은 감소하는 검정하기 위해, Cochran-Armitage Trend test 수행

# prop.trend.test 함수 사용 (첫번째 인자에는 Good 숫자들, 두번째 인자에는 전체 숫자들 대입)

# 검정 결과가 p<0.01로 유의하므로 우울증 약 복용량이 늘어날수록, 우울증 치료에 효율적이라 볼 수 있음

prop.trend.test( c(12,8,25), c(43,17,35) )

Chi-squared Test for Trend in Proportions data: c(12, 8, 25) out of c(43, 17, 35) , using scores: 1 2 3 X-squared = 14.622, df = 1, p-value = 0.0001314






Cochran-Armitage Trend test 예외


: 비율의 증가, 감소가 아닌 연관성 자체를 검정하는 경우에는 경향분석 대신 카이제곱 검정을 사용

 

Low

Medium 

High 

Good 

12

18

10

Bad

31

9

15

전체

43

27

25 

비율

0.28 (=12/43)

0.66 (=18/27)

0.40 (=10/25)

# prop.trend.test 함수 사용 (첫번째 인자에는 Good 숫자들, 두번째 인자에는 전체 숫자들 대입)

# 검정 결과가 p>0.01로 유의하지 않으므로 우울증 약 복용량이 늘어날수록, 우울증 치료에 효율적이라 볼 수 없음

prop.trend.test( c(12,18,10), c(43,27,25) )

Chi-squared Test for Trend in Proportions data: c(12, 18, 10) out of c(43, 27, 25) , using scores: 1 2 3 X-squared = 1.9768, df = 1, p-value = 0.159

# chisq.test 함수 사용

# 검정 결과가 p<0.01로 유의하므로 우울증 약 복용량과 치료 정도의 연관성이 보임

Testing_matrix <- matrix( c(12, 31, 18, 9, 10, 15), ncol=3) chisq.test( Testing_matrix )

Pearson's Chi-squared test data: Testing_matrix X-squared = 10.283, df = 2, p-value = 0.005848






#Reference

1) https://en.wikipedia.org/wiki/Cochran%E2%80%93Armitage_test_for_trend

2) https://documentation.sas.com/?docsetId=statug&docsetTarget=statug_freq_examples08.htm%3Flocale&docsetVersion=14.2&locale=ko

3) https://www.vice.com/en_us/article/bjbdg8/how-to-take-ketamine-risks-side-effects-drug-test





경향분석 (Cochran-Armitage Trend test) End

BioinformaticsAndMe

'Statistics' 카테고리의 다른 글

분산 분석 (ANOVA)  (0) 2019.11.04
Z-검정 (Z-test)  (0) 2019.10.28
피셔정확검정 (Fisher exact test)  (0) 2019.10.15
1종, 2종 오류 (Type 1, 2 error)  (0) 2019.10.07
카이제곱검정 (Chi square test)  (0) 2019.10.01

#생물정보학 교육정보






○ 교육명칭 : 2019년도 유전체 분석 분야 재직·연구자 전문 교육

○ 교육내용 : 유전체 빅데이터 분석 머신러닝 - 딥러닝 실습 교육

○ 교육기관 : 한국바이오협회

○ 모집대상 : 유전체 분석 분야 재직 및 연구자

유전체 빅데이터 분석에 관심 있거나 산업 트랜드를 알고 싶으신 분

유전체 데이터 적용을 위한 머신러닝과 딥러닝에 대해 공부하고 싶으신 분


○ 교육기간 : 2019년 11월 07일~08일(오전10시~오후5시)

○ 모집기간 : 2019년 11월 01일(금)까지

○ 모집인원 : 30명(제출한 설문조사 확인 후 선발예정)

○ 교육장소 : 판교 스타트업캠퍼스 세미나실 2번

○ 준 비 물 : 실습교육을 위해 무선인터넷이 가능한 노트북 지참

○ 신청방법 : 링크(http://naver.me/xayxkFrs)에서 신청

○ 문의사항 : 교육진행 관련 문의(031-628-0032)





1.       개    요

      목         적  :  한국바이오협회는 유전체 분석 관련 직종의 재직·연구자의 직무능력 향상을 위해 단기과정의 교육 프로그램을 운영함

      지 원 부 처  :  산업통상자원부, 한국산업기술평가관리원

      교 육 주 관  :  한국바이오협회

      과   정  명   유전체  분석  분야  ·연구자  전문  교육

      교   육   비  :  무료 (단, 식비 및 교통비, 주차비는 본인부담)

2.       교육 프로그램

 

일 자

교육 시간

세부 내용

강 사 명

 

1일차

11/07

(목)

10:00~12:00

  유전체 빅데이터 연구 및 산업 트랜드

테라젠이텍스

김태형 상무

12:00~13:00

점 심

13:00~17:00

  유전체 데이터 적용을 위한 머신러닝과 딥러닝 따라하기 1

테라젠이텍스

김종수 과장

 

2일차

11/08

(금)

10:00~12:00

  헬스케어 분야 AI 및 빅데이터 기술 활용 트렌드

테라젠이텍스

김현민 대리

12:00~13:00

점 심

13:00~17:00

  유전체 데이터 적용을 위한 머신러닝과 딥러닝 따라하기 2

테라젠이텍스

소재우 대리




- 1일 차


  유전체 빅데이터 연구 및 산업 트랜드

최근 4차 산업혁명이 떠오르면서 인공지능과 오믹스 빅데이터에 관한 관심이 증가하고 있다. 텍스트, 이미지, 음성, 영상 등과 같이 다양하고 방대한 데이터는 인공지능 기술의 성능향상에 있어 핵심적인 요소이므로 여러 분야에서 이러한 데이터를 이용하여 인공지능 기술 개발에 몰두하고 있으며, 바이오업계 역시 이를 통해 인공지능 기술 개발을 시도하고 있다.


  유전체 데이터 적용을 위한 머신러닝과 딥러닝 따라하기 1

최근 GPU의 활용과 컴퓨팅 파워의 증가로, 머신러닝 문제에서 딥러닝 모델이 많이 사용되고 있다. 가장 유저 수가 많은 딥러닝 라이브러리 중 하나인 텐서플로우와 사이킷런을 이용하여 딥러닝 모델을 이용해 간단한 머신러닝 프로젝트를 수행해본다. 이 과정에서는 또한 테이블 데이터에 대한 모델링과 모델평가 과정을 실습할 예정이다.



- 2일 차


  헬스케어 분야 AI 및 빅데이터 기술 활용 트렌드

헬스케어 분야 즉, 의료나 바이오 분야의 많은 양의 데이터를 처리하기 위해서는 확장 가능한 기계 학습, 데이터 마이닝 알고리즘 및 시스템이 매우 중요하며 데이터의 양, 복잡성 및 속도의 증가로 확장 가능한 데이터 분석 알고리즘 및 시스템이 필요하다. 의료 및 바이오 분야의 AI 및 빅데이터 기술 활용 사례를 알아보고 산업 분야에 적용 예를 살펴본다.


  유전체 데이터 적용을 위한 머신러닝과 딥러닝 따라하기 2

유전체 데이터 적용을 위한 머신러닝과 딥러닝 따라하기 1에서 배운 내용을 바탕으로, 컴퓨터 비전 도메인에 딥러닝을 적용하는 실습을 진행한다. 이 과정에서는 이미지 데이터를 이용하고, convolution neural network 모델을 배워서 적용해본다. 모델의 일반화 성능을 평가하는 방법에 대해서 자세히 다뤄볼 예정이다.

※ 상기 교육내용은 교육기관 및 강사 사정에 의해 변경될 수 있음

3.       교육 대상

      모집대상  -  유전체  분석  관련  기업이나  연구소에  재직  중이며, 

                   

                       유전체 빅데이터 분석에 관심 있거나 산업 트랜드를 알고 싶으신 분



-  유전체 데이터 적용을 위한 머신러닝과 딥러닝에 대해 공부하고 싶으신 분 (신청 시 설문조사 첨부)


      정         원 : 30명 (설문조사 확인 후 선발)

4.       교육 신청

      신청기간 : 2019년 11월 1일(금)까지

      신청방법 : 온라인 신청페이지 (http://naver.me/xayxkFrs) 에서 접수 (설문조사 첨부)

      준 비 물 : 실습을 위한 무선인터넷 연결이 가능한 노트북 지참

(클라우드 서버 사용 예정)

5.       교육 장소

      판교 스타트업캠퍼스 2층 세미나실 2번 (경기도 성남시 분당구 판교로 289번길 20)

      자가용 이용 시 주차지원(주차비) 불가 (대중교통 이용 바람)

6.       문의 사항

      교육진행 문의 : 한국바이오협회 유전체 분석 교육 담당자, 031-628-0032




[Python] 연산자(Operator) Start

BioinformaticsAndMe






Python 연산자


: 파이썬 연산자는 변수 및 특정값에 대한 작업을 위해 사용됨

: 파이썬의 기본 연산자는 7가지로 나뉨

1. 산술 연산자(Arithmetic operator)

2. 할당 연산자(Assignment operator)

3. 비교 연산자(Comparison operator)

4. 논리 연산자(Logical operator)

5. 식별 연산자(Identity operator)

6. 멤버 연산자(Membership operator)

7. 비트 연산자(Bitwise operator)




1. 산술 연산자(Arithmetic operator)


: 산술 연산자는 기본적인 수학 연산을 위해 사용

연산자

기능

실행

결과

+

더하기(Addition)

1 + 1

2

-

빼기(Subtraction)

3 - 2

1

*

곱하기(Multiplication)

2 * 2

4

/

나누기(Division)

4 / 2

2

%

나머지(Modulus)

5 % 2

1

**

제곱(Exponentiation)

3 ** 3

27

//

몫(Floor division)

7 // 2

3



2. 할당 연산자(Assignment operator)


: 할당 연산자는 변수에 값을 대입하기 위해 사용

연산자

기능

실행

결과

 =

왼쪽 변수에 오른쪽 값을 할당

x = 5

5

 +=

 왼쪽 변수에 오른쪽 값을 더한 후,

그 결과를 다시 왼쪽변수에 할당

x += 3

8

 -=

 왼쪽 변수에서 오른쪽 값을 뺀 후,

그 결과를 다시 왼쪽변수에 할당

x -= 3

2

 *=

왼쪽 변수에 오른쪽 값을 곱한 후,

그 결과를 다시 왼쪽변수에 할당

x *= 3

15

 /=

왼쪽 변수에서 오른쪽 값을 나눈 후,

그 결과를 다시 왼쪽변수에 할당

x /= 3

1.6666666666666667

%=

왼쪽 변수에서 오른쪽 값을 나눈 후,

그 나머지의 결과를 다시 왼쪽변수에 할당

x %= 3

 2



3. 비교 연산자(Comparison operator)


: 비교 연산자는 두 값을 비교하기 위해 사용

연산자

기능

실행

결과

==

값이 같음

5 == 3

False

!=

값이 같지 않음

5 != 3

True

>

왼쪽이 오른쪽 값보다 큼

4 > 3

True

<

오른쪽이 왼쪽 값보다 큼

3 < 3

False

>=

왼쪽이 오른쪽 값보다 크거나 같음

6 >= 6

True

<=

오른쪽이 왼쪽 값보다 크거나 같음

7 <= 8

False



4. 논리 연산자(Logical operator)


: 논리 연산자는 조건문을 연결하기 위해 사용

연산자

기능

실행

결과

and

모두 참이면 True 리턴

2<5 and 3<10

True

or

하나라도 참이면 True 리턴

2<4 or 7>5

True

not

결과가 False이면 반대인 True 리턴

not(3<4 and 5<2)

True



5. 식별 연산자(Identity operator)


: 식별 연산자는 메모리 위치가 동일한지를 비교하기 위해 사용

연산자

기능

실행

결과

is

두 변수가 같은 객체메모리면 True 리턴

x = ["apple", "banana"]

y = ["apple", "banana"]

z = x

print(x is z)

True

is not

두 변수가 같은 객체메모리가 아니면 True 리턴

x = ["apple", "banana"]

y = ["apple", "banana"]

z = x

print(x is not y)

True



6. 멤버 연산자(Membership operator)


: 멤버 연산자는 시퀀스가 해당 객체에 존재하는 확인하기 위해 사용

연산자

기능

실행

결과

in

객체 내에 해당 값이 포함된다면 True 리턴

x = ["apple", "banana"]

print("banana" in x)

True

not in

객체 내에 해당 값이 포함되지 않으면 True 리턴

x = ["apple", "banana"]

print("pineapple" not in x)

True



7. 비트 연산자(Bitwise operator)


: 비트 연산을 통하여 2진법으로 구성된 값을 계산하기 위해 사용

연산자

기능

실행

결과

& (Binary AND)

비트 단위로 and 연산

(모두 1일 경우 1 리턴)

x=0b0110; y=0b1010

print(bin(x&y), x&y)

0b10 2

| (Binary OR)

비트 단위로 or 연산

(둘 중 하나가 1일 경우 1 리턴)

x=0b0110; y=0b1010

print(bin(x|y), x|y)

0b1110 14






#Reference

1) https://www.w3schools.com/python/python_operators.asp

2) https://wikidocs.net/1043

3) http://pythonstudy.xyz/python/article/8-%EC%97%B0%EC%82%B0%EC%9E%90

4) https://wikidocs.net/20704

5) https://076923.github.io/posts/Python-6/




[Python] 연산자(Operator) End

BioinformaticsAndMe

'Python' 카테고리의 다른 글

[Python] 리스트(List)  (0) 2019.10.30
[Python] 문자열(String)  (0) 2019.10.24
[Python] 자료형(Data type)  (0) 2019.10.15
[Python] 주석 처리  (0) 2019.10.15
Anaconda 설치  (0) 2019.10.08

[Kubernetes] 쿠버네티스 소개 Start

BioinformaticsAndMe





Kubernetes (쿠버네티스)


: 쿠버네티스는 디플로이 자동화/스케일링/컨테이너 어플리케이션 관리를 위한 오픈 소스 시스템

: 구글의 10년 경험으로 설계되었고, 현재 리눅스 재단에 의해 관리

: 머신 클러스터의 시작/중지/업데이트/운영관리를 안정적인 자동화 상태로 운영 가능

: kube, k8s(= 'k' + 8 letters + 's')라고도 불림





Kubernetes 성장의 이유


1. Kubernetes helps you move faster


2. Kubernetes is cost efficient


3. Kubernetes is cloud agnostic


4. Cloud providers will manage Kubernetes for you


https://blog.newrelic.com/engineering/what-is-kubernetes/







#Reference

1) https://people.redhat.com/~eparis/kubernetes/kube.pdf

2) https://ko.wikipedia.org/wiki/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4

3) https://blog.newrelic.com/engineering/what-is-kubernetes/




[Kubernetes] 쿠버네티스 소개 End

BioinformaticsAndMe



'Program' 카테고리의 다른 글

Jupyter notebook (주피터 노트북)  (0) 2019.11.14
API 기초 학습  (0) 2019.09.26
Docker 설치  (0) 2018.09.03
Docker 시작하기  (1) 2018.07.17
[Pachyderm] Splitting Data for Distributed Processing (분산처리)  (0) 2018.07.08

비타민 (Vitamin) Start

BioinformaticsAndMe






비타민 (Vitamin)


: 체내 효소 기능을 돕는 보조인자(cofactor)로 성장과 대사에 필수적인 탄소 화합물

: 비타민 자체가 몸의 구성 성분은 아니지만, 생리 활성 기능에 필요한 물질

: 체내에서 합성하지 못해 반드시 섭취해야 함

: 총 13종류의 비타민으로 분류되고, 부족하면 특유의 결핍 증세를 보임

*지용성 비타민 - A, D, E, K

*수용성 비타민 - B(1/2/3/5/6/7/9/12), C





1. 비타민 A (Retinol;레티놀)


ㄱ) 기능

- 시력, 세포재생, 면역계, 태아발달, 피부건강, 상처치료, 뼈형성

ㄴ) 결핍

- 실명, 야맹증, 면역감퇴, 갑상선장애, 두꺼비모양피부증

ㄷ) 음식

- 닭, 소의간, 달걀, 버터, 치즈, 우유, 요거트, 녹색채소, 당근, 고구마, 호박, 살구, 캔터루프, 망고, 복숭아



2. 비타민 B1 (Thiamine;티아민)


ㄱ) 기능

- 신진대사, 탄수화물전환, ATP생성, 세포에너지, 심기능, 신경계, 스트레스회복

ㄴ) 결핍

- 피로, 우울증, 과민성, 두통, 메스꺼움, 복통, 소화불량, 각기병

ㄷ) 음식

- 소고기, 돼지고기, 가금류, 간, 통곡물, 현미, 맥아, 겨, 맥주효모, 블랙스트랩당밀, 견과류, 콩류, 스피룰리나, 쌀, 파스타, 빵, 시리얼



3. 비타민 B2 (Riboflavin;리보플라빈)


ㄱ) 기능

- 항산화, ATP생성, 지방/아미노산가공, 신경계, 피부, 간, 눈, 머리카락, 백내장예방, 편두통감소

ㄴ) 결핍

- 발적, 종창, 인후통, 붉은혀, 피부질환, 입근처갈라짐

ㄷ) 음식

- 내장, 맥주효모, 야생쌀, 통곡류, 아몬드, 맥아, 우유, 버섯, 요거트, 콩, 브로콜리, 달걀, 시금치, 방울다다기양배추



4. 비타민 B3 (Niacin;니아신)


ㄱ) 기능

- 염증억제, 성호르몬생성, 순환계, 지방/단백질대사, 신경계, 피부, 간, 눈, 머리카락, 골관절염감소, 혈당조절, 콜레스테롤조절

ㄴ) 결핍

- 피로, 혈액순환장애, 우울증, 소화불량, 구토, 구내염, 펠레그라, 피부비늘화, 설사, 치매

ㄷ) 음식

- 소콩팥, 소간, 참치, 황새치, 연어, 맥주효모, 소고기, 사탕무, 해바라기씨, 땅콩



5. 비타민 B5 (Pantothenic acid;판토텐산)


ㄱ) 기능

- 에너지전환, 콜레스테롤합성, 적혈구생성, 부신호르몬, 아세틸콜린생성, 소화계, 스트레스감소, 운동능력강화, 류마티스관절염치료

ㄴ) 결핍

- 불면증, 피로, 우울증, 구토, 과민성, 발화끈거림, 위통, 상기도감염

ㄷ) 음식

- 콜리플라워, 옥수수, 토마토, 브로콜리, 아보카도, 렌틸콩, 노른자, 소, 오리, 칠면조, 닭, 해바라기씨, 땅콩, 말린완두, 우유, 고구마, 연어, 랍스터



6. 비타민 B6 (Pyridoxine;피리독신)


ㄱ) 기능

- 포도당전환, 뇌발달, 노르에피네프린/세로토닌/멜라토닌생성, 심질환관리, 호모시스테인조절, B12흡수보조, 면역세포생성, 적혈구생성

ㄴ) 결핍

- 신경질, 근력저하, 우울증, 과민성, 단기기억상실, 집중력저하

ㄷ) 음식

- 소간, 칠면조, 닭, 연어, 참치, 새우, 치즈, 우유, 콩, 렌틸콩, 당근, 시금치, 겨, 맥아, 현미, 해바라기씨, 바나나



7. 비타민 B7 (Biotin;비오틴)


ㄱ) 기능

- 신진대사, 정상배아성장, 임신중양분생성, 머리카락, 피부, 손톱/발톱

ㄴ) 결핍

- 피로, 식욕부진, 탈모, 피부건조, 진분홍부은혀, 입꼬리갈라짐, 안구건조, 우울증, 불면증

ㄷ) 음식

- 노른자, 통곡류, 맥주효모, 정어리, 땅콩, 아몬드, 호두, 피칸, 완두콩, 바나나, 버섯, 콜리플라워



8. 비타민 B9 (Folate;폴산;엽산)


ㄱ) 기능

- 에너지생성, 정신건강, 뇌기능, DNA/RNA생성, 임신/유아/청소년급속세포성장, B12와함께적혈구생성, 호모시스테인조절, 심질환관리

ㄴ) 결핍

- 혀염증, 치주질환, 성장부진, 식욕부진, 건망증, 게으름, 설사, 숨가쁨, 과민성, 태아신경관결손, 빈혈

ㄷ) 음식

- 방울다다기양배추, 녹색채소, 갓, 시금치, 순무, 아스파라거스, 소고기, 콩, 흰강낭콩, 리나콩, 녹두, 뿌리채소, 통곡류, 우유, 오렌지주스, 연어, 아보카도



9. 비타민 B12 (Cobalamin;코발아민)


ㄱ) 기능

- 신경세포유지, DNA/RNA생성, B9와함께적혈구생성, 호모시스테인조절, 심질환관리, S-adenosylmethionine(SAMe)생성

ㄴ) 결핍

- 손발저림, 피로, 신경과민, 숨가쁨, 설사, 신경손상, 빈혈

ㄷ) 음식

- 조개류, 물고기, 소고기, 돼지고기, 내장, 달걀, 유제품



10. 비타민 C (Ascorbic acid;아스코르브산)


ㄱ) 기능

- 항산화, 조직성장, 세포수리, 콜라겐생성, 상처치료, 치아유지, 뼈유지, 혈관/연골/인대/힘줄/피부생성, 체내강력한환원제

ㄴ) 결핍

- 괴혈병, 치주질환, 건성모, 쉽게멍듦, 피부건조, 느린상처치유, 코피, 감염노출, 결합조직파괴

ㄷ) 음식

- 딸기, 블루베리, 라즈베리, 크랜베리, 오렌지, 자몽, 파인에플, 피망, 캔터루프, 수박, 키위, 파파야, 망고, 토마토, 브로콜리, 양배추, 콜리플라워



11. 비타민 D (Cholecalciferol;콜레칼시페롤)


ㄱ) 기능

- 콜레스테롤유도체, 칼슘흡수촉진, 인흡수족친, 뼈생성, 뼈유지, 면역조절, 

ㄴ) 결핍

- 우울증, 고혈압, 대장암, 유방암, 전립선암, 비만, 구루병, 뼈약화

ㄷ) 음식

- 피부햇빛흡수, 우유, 약물



12. 비타민 E (Tocopherol;토코페롤)


ㄱ) 기능

- 항산화, 적혈구생성, 비타민K작용촉진, 세포손상방지

ㄴ) 결핍

- 근육량감소, 시력문제, 불안정한걸음, 신장/간문제, 

ㄷ) 음식

- 맥아, 시리얼, 해바라기씨, 땅콩, 달걀, 올리브오일, 간, 시금치, 고구마, 참마, 아보카도, 아스파라거스



13. 비타민 K (Phylloquinone;필로퀴논)


ㄱ) 기능

- 혈액응고인자생성, 뼈건강

ㄴ) 결핍

- 과다줄혈, 내출혈

ㄷ) 음식

- 녹차, 소간, 순무, 케일, 브로콜리, 양배추, 시금치, 상추, 아스파라거스








#Reference

1) https://www.hollandandbarrett.com/the-health-hub/vitamins-and-supplements/vitamins/what-is-a-vitamin/

2) https://namu.wiki/w/%EB%B9%84%ED%83%80%EB%AF%BC

3) https://www.ahealthblog.com/vitamin-deficiency-symptoms-chart.html




비타민 (Vitamin) End

BioinformaticsAndMe



'Biology' 카테고리의 다른 글

암 (Cancer)  (0) 2019.10.24
Point mutation vs Frameshift mutation  (0) 2019.10.23
화학결합 (Chemical bond)  (0) 2019.10.17
ABO식 혈액형 (ABO blood group)  (0) 2019.10.14
세포핵 (Cellular nucleus)  (0) 2019.10.08

+ Recent posts