eda (17)


clinVar EDA를 Polars로 해보자-Appendix. 각 변이별 일짱

clinVar EDA를 Polars로 해보자-Appendix. 각 변이별 일짱

그 전에 clinVar 하면서 태블로 대시보드 만들었죠? 거기서 염색체별로 Top 25 만들고 그랬는데… 그거를 이제 CLNVC(변이)별로 뭐가 제일 많은지 보자는 얘기다. SNV는 저번 글에 나와있었기 때문에 생략.들어가기 전에-이게 뭔 변이임?이 블로그에 들어오시는 분들중에는 생물정보학을 하고 있거나, 나처럼 업으로 삼지는 않았지만 거기에 관심이 있거나, 생물학 전공인 경우도 있겠지만 어때요? 여기 들어와서 clinVar라는 걸 처음 보신 분도 계시지 않습니까? 그래요, 그겁니다. EDA 따라오면서도 이게 뭐여 해서 뭔가 찾아보니 보이는 것은 꼬부랑글씨였으며… 물론 유전자에 문제가 생긴다고 다 질병이 되는 건 아니고, 피부 색이나 눈 색, 머리카락 색같이 사람의 형질이 달라지는 경우도 있긴 있습니다...

clinVar EDA를 Polars로 해보자-Pathogenic EDA

clinVar EDA를 Polars로 해보자-Pathogenic EDA

지난 이야기: 아 염색체별로 CLNSIG 비중이 이렇구나Pathogenic 일로와봐 pathogenic_df = clinvar_df.filter(pl.col('CLNSIG_Group') == 'Pathogenic')이렇게 하면 됩니다.CLNVC별로 보기clnvc_grp = clinvar_df.group_by('CLNVC').agg( pl.col('CLNSIG').count().alias("Total")).sort('Total', descending=True)묶어드렸습니다^^ fig = go.Figure()fig.add_trace( go.Bar(x = clnvc_grp['CLNVC'], y = clnvc_grp['Total'], marker_color = px.colors.sequential...

clinVar EDA를 Polars로 해보자

clinVar EDA를 Polars로 해보자

전에 깔짝깔짝 판다스랑 비교했던 폴라스로… EDA가 될지 해봤다. 그래서 전에 했던거랑 내용은 같은데, 비교하는 툴이 달라지는겁니다. 이거 아마 포폴에도 폴라스 플롯틀리로 올라갈듯함. 근데 새로 나온건 알겠어, 이걸 써봐야 해? 네카라쿠배의 배에서 쓴답니다. 전처리는 이전 과정이랑 비슷하니까 그룹바이랑 필터 위주로 ㄱㄱ합시다.clinvar_df = pl.read_csv('data/clinvar_20260404.csv', infer_schema_length=0)얘는 판다스에서 붙는 메모리 관련 옵션이 아예 안 붙는다. 근데 뭔가 붙어있지 않냐고? 걍 열면 Original error: invalid primitive value found during CSV parsing 에러 뜨니까 걍 다 읽고 판별하셈 한..

Medical Cost Personal Datasets

이거어어어어는... 돌리는건 하나 돌렸습니다. 그럼 왜함? 그 옵튜나인가 뭔가 하는 거 써보려고 했음.Optuna파이썬 라이브러리인데, 하이퍼파라미터 튜닝할때 쓴다. 모델 학습 전 사용자가 직접 설정하는 외부 구성 변수를 하이퍼파라미터라고 하는데, 이걸 사람이 수동으로 일일이 조정해가면서 어느 조건에서 내 모델을 뽕을 잘 뽑을지를 고민...하면서 일일이 하다 보면 할 것도 많고 파라미터 하나하나 일일이 손대가면서 찾기도 힘들잖아요? 그 노가다를 알아서 해주는게 옵튜나입니다. 모델 바이 모델이라 함수에 집어넣는 게 다른데, 아무튼 이거 이거 이거 해줘 하면 지 알아서 음 이렇군 하면서 오케이 가릿 이걸로 진행시켜 한다. 모델에 따라서는 시간이 좀 걸리기도 합니다.안하면 섭한 전처리자녀 수 범주화# 자녀 ..

Red Wine Quality

오늘은 회귀입니다. …회기는 그 경희대 있는 지하철역이예요 선생님들.주성분분석머고 오늘은 ML 안함? 아니 할건데… 저게 회귀분석 할거라고 했죠? 저 데이터 칼럼이 12개인데 하나빼고 다 독립변수니까 지금 독립변수가 11개거든요. 그거 그대로 때려박으면 다중공선성 터질수도 있으니까 압축할 수 있는건 압축하고 가자 이겁니다. 11개 언제 넣었다 뺐다 할거임? wine_x = wine.copy()X = wine_x.drop('quality', axis=1)y = wine['quality']# 1. 스케일링 (PCA 전 필수!)scaler = StandardScaler()X_scaled = scaler.fit_transform(X)# 2. PCA 객체 생성 (일단 모든 성분을 다 뽑아봅니다)pca = PCA(..

Palmer Archipelago (Antarctica) penguin data

예… 그… 펭귄 데이터입니다. 그건 아는데 이걸 왜 꺼냈냐… 분류 할거라서 꺼냈습니다. 예. 아니 진짜 할거임.전처리 하기 전에...그냥 EDA였으면 범주화하고 결측값 확인하고 채우거나 날리거나 했을텐데, 이번에는 그렇게 하고 땡 하면 안된다. 왜냐… 무작정 아무 칼럼이나 학습하는데 썼다간 모델 성능이 떨어지거든요. 그리고 범주형 칼럼중에 학습에 쓸 칼럼은 인코딩도 해 줘야 한다. 학습에 쓸 수 없는 칼럼 날리기내 일일이 올리기 귀찮아서 올리지는 않는다만... 분석하기 전에 항상 .head()랑 .column 써서 뭐 있는지 보고 가죠? shape는 잘 안씀... 아무튼. 거기서 칼럼들을 확인해보고 우선 날릴 것부터 정할거다.# Copypenguin_drop = penguin.copy()# 하고 날려날려..

Google Play Store – Most Downloaded Android Apps

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, ..

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

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

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

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

얘! 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..

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

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

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..

Post-COVID Video Games Worldwide (2021-2025)

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')그래서 이렇게만 함. 결..