Coding/JavaScript

개 얼탱이 없는 작업이 온다 두둥

이게 뭐냐고요? 포폴을 웹으로 만들어서 서버에 올리자는 진심 얼탱이없는 작업에 들어갈 예정입니다. 근데 지금 팀플때문에 바빠서 구조 구상하고 색깔만 짜놨음. 대충 그렸음 대충... 1. 내 이름이랑 전번 이메일 깃헙 블로그(티스토리) 링크가 헤더에 들어가고(이부분도 고민 좀 해봐야됨...)2. 그 밑에 내 이력이랑 스킬(뭐뭐 쓸 수 있나) 프로젝트가 들어가는데 이게 탭메뉴입니다. 그니까 얘를 탭하면 전환이 돼야 하는데 이걸 자바스크립트로 해야 하고…3. 프로젝트에는 내 포폴에도 올라가는 프로젝트 세 개가 올라가는데 그거에 대한 설명을 개별 프로젝트로 아코디언 메뉴로 하고 PDF파일을 거기다가 올리든가 할겁니다. 링크 관련해서는 이걸 폰트어썸 아이콘만 넣을지(7.x로 올렸더만…) 이름을 병기할지정도 고민중..

Coding/EDA

Google Play Store – Most Downloaded Android Apps

이거는 말 그대로 플레이스토어 앱 정보가 있는 데이터인데… 본인 아이폰 씁니다. 근데 왜 플레이스토어죠? 앱스토어 데이터가 없다. 참고로 전처리 할거 꽤 있으니까 잘 따라오십쇼.전처리가격 정상화가격 정상화는 투트랙으로 이뤄질건데, 일단 앱 가격에 붙어있는 $를 다 빼고 float으로 만들어줄거다. 그리고 결측값도 채워줄건데, 결측값이 있는 앱들은 다 무료 앱이라 0으로 때울거다. # 일단 저 달러부터 떼보시죠 playstore_df['Price']0 NaN1 NaN2 NaN3 NaN4 NaN ... 82 $4.9983 $3.4984 $6.9985 $4.9986 $3.99Name: Price, Length: 87, ..

Coding/JavaScript

씨본 팔레트 컬러 시뮬레이터 보수작업

https://koreanraichu.tistory.com/853 씨본 컬러 파레트 씨뮬레이터그 Seaborn에서 컬러 커마 가능한거 아시죠? 근데 이게 뭔 색인지 뭔 파레트가 어떻게 나오는지 모르잖아요. ㅇㅋ? ㅇㅇㅋ. 그래서 색 두 개를 입력받은 다음 한 10칸정도로 띄엄띄엄 칠한거 하나, ckoreanraichu.tistory.com이거 함 써보고 고칠점 찾음…입력하는 색상 앞에 #가 들어가면 #을 빼주기이게 왜 필요함? 하실 수도 있는데 컬러 파레트 만드는데서 복사할때 앞에 #이 붙는 경우가 있고, 아닌 경우가 있습니다. 근데 #이 붙으면 안됐거든요? 이러면 사용자 입장에서는 아니 내가 이거 하나 쓰자고 #을 지워야됨??? 이 되는거죠. 뭔지 아시겠죠? const color1 = first_col..

Coding/Python

MSA에 군집분석을 끼얹어보세요!

있는것도 복잡한데 저걸 왜 넣냐고요? 라이노바이러스는 좀 덜한데, 이게 기본적으로 300개씩 찾고 그렇다보니 계통수가 무지하게 길어집니다. 이러면 이걸 넣는 나도 고통이고 읽는 사람도 고통이예요. 거의 뭔 스크롤이여 스크롤. 근데 계층적 군집분석 결과가 덴드로그램인데 이거 목 꺾고 옆으로 보면 계통수거든요? 그리고 어쨌든 묶은거니까 이거 넣어보자 해서 넣었죠.실루엣 계수이게 원래는 군집 내에서의 응집도와 다른 군집간의 거리를 비교해서 군집분석이 잘 됐는지, 안 됐는지를 평가하는 지표인데 k-means나 k-medoid에서 군집 개수 나눌때도 쓴다. 그 개수가 돌려돌려 돌림판으로 나오는게 아닙니다… 그럼 계통수는 버리는건가요? 아니, 그거 보고 대충 개수 나눌수도 있다. 이거 봐봐요 이걸로 뭘 어떻게 정할..

Coding/EDA

얘! clinvar도 EDA가 된단다! (3)

생각보다 분량은 없지만 일단 태블로로 넘어와봤다. 전에도 얘기했지만 염색체가 25개(상+성+미토)라고 했잖아요? 이거 25개를 일일이 파이썬으로 그리면 코딩하는 나도 고달프고 읽는 당신들도 고달프다. 근데 태블로에는 대시보드라는 게 있어요. 그래서 시트 만들고 대시보드에서 필터걸고 염색체별로 볼 수 있음. 파워포인트 애니메이션마냥 스무th합니다 움직임도.대시보드+스토리보드 구성1페이지각 염색체별... 그니까 1번, 2번 이런 식으로 볼 수 있다. 염색체별 변이 TOP 25(변이가 가장 많은 상위 25개), 염색체 내 유전자의 CLNSIG 및 CLVNC 비율이 들어가있다. 그러니까 파이썬에서 일일이 다 할 필요 없이 여기다가 필터 걸어두고 저 표에 있는 염색체 번호를 누르면 무슨 염색체 내에서 변이가 가장..

Coding/EDA

얘! clinvar도 EDA가 된단다! (2)

그렇다. 대망의 2부가 돌아왔다. 이게 정보 확인하는거 생략하고도 분량 꽤 되니까 알아서 쫓아오십쇼. 다음편에 태블로 얘기만 할거라서 이번편에 다 끝낼거임.전처리쓸 칼럼만 추리기이게 칼럼이 되게 많은데 그걸 우리가 다 쓸 게 아니거든요? 그래서 쓸 것만 추린 다음에 데이터프레임을 재구성하고 그걸 csv파일로 보내야 합니다. 왜냐고? 그걸 보내야 태블로에서도 쓰죠.analysis_column = ['CHROM','POS','REF','ALT','CLNSIG','CLNVC','GENEINFO','CLNREVSTAT'] # 칼럼 뭐하는건지 위에 있어요1. CHROM: 염색체(몇 번 염색체인지)2. POS: 염색체 어디?3. REF, ALT: 비포&애프터 (REF에 있는 시퀀스가 ALT로 바뀐 변이다)4. CL..

Coding/EDA

얘! clinvar도 EDA가 된단다! (1)

이거 3부작입니다... 일단 분석을 하다 말았고, 태블로도 써야됨.clinvar는 유전적 변이와 인간의 표현형과의 관계에 대한 데이터를 수집하여 보관하는 데이터베이스이다. 이게 데이터가 어떻게 되어있냐면 몇번 염색체 어디에 뭐가 어떻게 뻑나면 어떤 변이더라~ 이런게 들어있는데, vcf파일입니다. 이거 분석하려면 여는것부터 골치아픔. 근데 이게 된다고요? 내가 vcf파일 상태로는 열기도 조작하기도 귀찮아서 아예 거기 안에 있는 내용을 데이터프레임화하고 csv로 만드는 코드를 짰음.VCF파일 내용물'1', '66926', '3385321', 'AG', 'A', '.', '.', 'ALLELEID=3544463;CLNDISDB=Human_Phenotype_Ontology:HP:0000547,MONDO:MOND..

Coding/Python

M1V1 = M2V2

카테고리를 보고 이게 여기가 맞나 싶으셨죠? 맞습니다. 파이썬 코딩한거임.그 공식은 뭔지 구글에 찾아보면 나오는데, 뭐 희석할때 농도 얼마 맞추려면 얼마나 넣어야되나 구할 때 쓰는 공식입니다. 근데 계산할때 단위는 맞추셔야 됩니다. 한쪽은 리터인데 한쪽은 밀리리터면 계산 뻑나요. # M1V1 = M2V2# 이거 되게 간단한 희석 농도 구하는 공식입니다. # 예를 들어서 100mM 염화나트륨 용액 xml를 넣어서 50mM 염화나트륨 100ml를 만들어야 해요. 그러면 100 * x = 50 * 100이 되거든요. # 그러면 100x = 5000이니까 100으로 나누면 x = 50이 됩니다. # 예시를 몰(M)로 들어서 글치 스톡 솔루션(농축액)에도 적용되는 공식입니다 이거. # 참고로 단위 통일하셔야 합니..

Coding/EDA

Ramen ratings

https://www.kaggle.com/datasets/residentmario/ramen-ratings Ramen RatingsOver 2500 ramen ratingswww.kaggle.com그... 돈코츠 이런거 아니고 우리 먹는 라면임다.데이터 입수import kagglehub# Download latest versionpath = kagglehub.dataset_download("residentmario/ramen-ratings")print("Path to dataset files:", path)ramen_df = pd.read_csv(f'{path}/ramen-ratings.csv')우리는 지혜롭게 해결해야 합니다. 창고 원격으로 털어가라고 줬으면 걍 원격으로 털어갑시다.전처리결측값 처리ra..

Coding/EDA

Post-COVID Video Games Worldwide (2021-2025)

https://www.kaggle.com/datasets/otegbolamarvellous/post-covid-video-games-worldwide-2021-2025이거 했음.전처리결측값 처리meta_df_na = meta_df.query('User_Score.isna()').indexmeta_df.loc[meta_df_na]결측값 있는 칼럼이 저기말고 없는데, 확인해보니까 그 뭐라고 해야 되지? 리뷰가 너무 적어서 평점을 모을 수 없는? 그런 게임들이었음. 그런건 tbd라고 하는데 저기다가 그거 때려박으면 평점이 문자가 돼서 문제가 터져요. meta_df['User_Score'] = pd.to_numeric(meta_df['User_Score'], errors='coerce')그래서 이렇게만 함. 결..

Coding/Python

코로나바이러스 MSA

나도 이걸 4번까지 하게 될 줄은 몰랐음…개요여러분들 다들 아시죠? 코로나19가 우리를 어떻게 변화시켰는지... 저는 자가격리도 해보고 걸려도 봤습니다. 자가격리때 다들 헐 어카냐 했는데… 저는 태생이 집순이라 1도 데미지 없었고요.. 격리소가 을지로 근처라 원격으로 명동성당 루기아 줘팼습니다. 창고는 언제나 열려있소# 쿼리 조건: SARS-CoV-2 (코로나19), Spike 단백질 위주로 털어보기# 2025년 최신 데이터 + 사람 숙주 조건query = "SARS-CoV-2 AND S[Gene Name] AND 2025[PDAT] AND Homo sapiens[Host]"# 1. ID 리스트 가져오기handle = Entrez.esearch(db="nucleotide", term=query, retm..

Coding/JavaScript

씨본 컬러 파레트 씨뮬레이터

그 Seaborn에서 컬러 커마 가능한거 아시죠? 근데 이게 뭔 색인지 뭔 파레트가 어떻게 나오는지 모르잖아요. ㅇㅋ? ㅇㅇㅋ. 그래서 색 두 개를 입력받은 다음 한 10칸정도로 띄엄띄엄 칠한거 하나, cmap(이어지는거)으로 하나 짜잔 하고 보여주자 이거다. 이거 근데 팀플에서도 써먹으려면 코드펜에도 올려야 할 듯. Seaborn palette simulator 그... 저기 인풋창에 색깔 두개 입력하시면 파레트랑 cmap이랑 보여줄거긴 합니다. 근데... 아... 세개 이상... 그거는 제 능력 밖이니까 걍 두개씩 돌려보세요... 이봐요 ..

Coding/EDA

또 ChEMBL을 털어보았다

오늘은 좀 다채롭습니다. 왜냐고? 뭐가 많이 들어서.그 우리 이제 할만큼 하셨으니까... 전처리는 다 안올릴게여... 내가 귀찮아서 이러는거 맞음. 내가 네이버 티스토리 미디움에 동시에 올리는데 그러면 복붙을 몇 번 하는겁니까...배경설명이번에 가져온 데이터베이스의 주제가 Kinase Inhibitor입니다. 이게 뭔데요? 를 설명하려면 kinase와 inhibitor를 다 설명해야 하는데… 아… Kinase는 뭐에 인산기를 붙이는 효소입니다. 인산기는 PO4(3-)고, 그걸 어디다가 붙이는 놈들이 다 카이네이스예요. 인산기를 어디다가 붙이는가는 효바효(효소 바이 효소)지만 어쨌든 인산기를 갖다 붙입니다. 보통 ATP에서 떼다가 붙이긴 합니다만. 자, 그럼 인히비터에 대한 얘기를 해봅시다. 우리 몸의 모..

Coding/Python

라이노바이러스 유전자로 MSA를 해보았다

얘는 스케일이 좀 다운됐음... 왜냐고요? 게놈이 7500bp거든요. 이걸 인플루엔자나 한타때처럼 2~300개 돌린다? 켜놓고 자고 일어나야됩니다. 아니 리눅스로 하셨어요? 걔로 하면 중간에 뻗음. 맥북으로 돌린건데도 이정돕니다.쟤는 또 뭐 하는 애임?여러분 감기랑 독감이랑 다릅니다. 단순히 증상이 다른게 아니라 원인 병원체가 달라요. 독감은 인플루엔자가 원인이고 감기는 라이노바이러스라는 놈이 원인이거든요? 다른 바이러스도 있다만. 그거 아십니까? 감기에는 약이 없음. 아니 저희 병원가면 약 주는데요? 그건 '증상을 완화시키는' 약이지 감기 바이러스를 조지는 약이 아닙니다. 아니 그럼 감기약이라고 하면 안되는거 아닌가요? 진정하십쇼. 감기 바이러스는 스포닝풀에서 저글링 뽑아내는것처럼 캐많아요. 그걸 일일..

Coding/Python

식물 데이터도 분석이 되나요?

결론부터 말하자면 분석은 된다. 되는데 데이터 리소스를 NCBI로 하는 건 비추다. 왜냐고? 그 이유는 올리면서 말해드림..def plot_lht_family_tree(alignment_file): align = AlignIO.read(alignment_file, "fasta") calculator = DistanceCalculator('identity') constructor = DistanceTreeConstructor(calculator, 'nj') tree = constructor.build_tree(align) fig = plt.figure(figsize=(15, 8)) ax = fig.add_subplot(1, 1, 1) plt.title("Arab..

홈으로 돌아가기

검색 결과

"search" 검색 결과입니다.