분류 전체보기
-
Streamlit - Text Input 받아서 Dynamic WebApp 구축하는법, text input을 event로 처리하는법Data Analysis/Streamlit 2021. 1. 11. 15:22
한국인들의 Streamlit 활용을 위해 포스팅합니다! Streamlit 은 한글로 된 정보가 많이 없다. 혹시나 어떤분에게 도움이 될까 글을 작성한다. 기본적인 사용법은 streamlit 홈페이지의 예시코드들을 따라 작성해보시면 된다. 혹시 기본적인 사용법에 대한 자료가 필요하시다면, 댓글에 이메일을 적어 두시면 예시코드파일을 보내드리겠습니다. # 예시 동영상 주의) Streamlit Forum에서 검색하여 작성한 코드이기에 완벽하지 않을 수 있습니다. 일단 기본적으로 streamlit에서는 event단위로 처리하는게 지원되지 않고 있다고 한다. (20년 6월기준) ( discuss.streamlit.io/t/get-text-input-when-user-pressed-return-key/3545 ) 허..
-
How to run streamlit from Colab (streamlit colab에서 작동시키기)Data Analysis/Streamlit 2021. 1. 11. 14:54
Streamlit 에 대한 한국어 글이 거의 없는 관계로 포스팅을 하게 되었습니다. 1. Colab 에 streamlit 패키지 설치 2. Colab 에 pyngrok 패키지 설치 3. 클라우드 리눅스 커널에 app.py 파일 만들기 (아래는 예시코드) %%writefile app.py import streamlit as st import numpy as np import pandas as pd from sklearn import datasets from sklearn.ensemble import RandomForestClassifier #PAGE_CONFIG = {"page_title":"StColab.io","page_icon":":smiley:","layout":"centered"} #st.beta..
-
Pandas - 조건에 따라 각각 다른 값 넣기, 서로다른 데이터프레임 Key 기준으로 Merge(Join) 하기, 특정 index에 접근하여 값 바꾸기프로그래밍 언어/Python 2021. 1. 11. 14:35
어떤 DataFrame(df1)을 다른 DataFrame(df2)의 특정값에 따라 값을 각각다르게 변경해주고 싶을 때, 또는 index값에 따라 값을 변경해주고 싶을 때, 데이터베이스에서 사용하듯이 Key값으로 참조한값을 넣어주고 싶을 때, apply는 if와 else문을 엄청걸어야하고, iloc과 loc으로 접근해야겠다 했지만, iloc과 loc은 꺽쇠([ ])에 변수를 받아들이지 못하여 매번 늪에 빠져서 뻘짓을 했던 기억이 몇번 있어서, 저처럼 늪에 빠진분들을 살릴 수 있기를 희망하며 포스팅을 합니다. 더 간단한 코드가 있다면 언제든 피드백환영합니다. 분명 pandas에서 이런 괴로움을 덜어낼 라이브러리를 만들어놨을건데 말이죠.. (부탁드립니다. 고통을 덜어주세요.) # df1과 df2의 생성 # K..
-
Deep Learning - CNN(Convolutional Neural Networks) 에 대하여Data Analysis/Deep Learning 2021. 1. 3. 14:59
# Before CNN CNN 이전의 이미지 인식은 2차원(RGB까지 합하면 3차원)을 1차원 배열(flatten)로 바꾼뒤, MLP(Multi-Layer Perceptron) 신경망으로 Fully Connected 하게 학습시키는 방법이었음 이미지의 형상은 고려하지 않고, 단순히 flatten된 raw data를 직접 처리하기 때문에 많은 양의 학습데이터가 필요했고, 학습시간 또한 길었음 또한 이미지가 회전하거나 움직이면(이미지 증식시) 완전히 다른 데이터로 인식할 수 밖에 없었음 (단순히 flatten된 1차원 배열이었기 때문) -> MLP가 특징추출과 학습에 있어 비효율적이었음 이미지의 공간정보의 손실을 막을 방법을 찾아낸 모델이 바로 CNN # CNN의 개념 CNN의 가장 핵심적인 개념은 바로 이..
-
Pandas - 조건에 맞는 컬럼 값 여러개 바꾸기프로그래밍 언어/Python 2020. 12. 24. 10:14
컬럼값을 바꿀 때, for 문으로 바꾸려고 하시는분들이 꽤 계실 것이다. 필자 또한 처음에 for문으로 일일이 바꾸어주었는데, 다른 프로그래밍 언어라면 그렇게 하겠지만, 파이썬은 진짜 웬만하면 다 만들어놓은게 많다. (그리고 만들어진 라이브러리들은 C++같은 저레벨언어로 만들어졌기 때문에 실행시간이 훨씬 빠르다.) 판다스를 사용한다 -> 판다스 객체에서 무엇인가 하고싶다 -> 판다스에서 제공할 것이다 이러한 흐름대로 의식을 진행시킨다면, 저처럼 개고생하는 일은 없으실 것이다. 이 포스팅에서는, 아래의 내용을 다룰 것이다. # Pandas 에서 조건에 맞는 컬럼에서 단일값 바꾸기 # Pandas 에서 조건에 맞는 컬럼에서 여러값 바꾸기 # Pandas 에서 조건에 맞는 컬럼에서 단일값 바꾸기 # 예시 데이..
-
Kaggle 랭커로부터 데이터분석 공부하기 (1) - Houses Prices / by SerigneData Analysis/Kaggle 2020. 12. 20. 16:45
나 같은 초심자에겐 Kaggle Ranker 들의 코드를 공부하는 것이 많은 도움이 된다. 오늘은 House Prices -Advanced Regression Techniques 에서 Top 4% 에 해당하는 Serigne님의 코드를 분석하여 데이터분석의 가이드라인을 잡아보고자 한다. SanFrancisco 범죄예측과 다르게 해당 컴페티션은 특징칼럼(벡터)가 80개나 되는데에 비해, 데이터 건수는 1460여개 밖에 되지 않아 필자는 전처리에서 데이터 유실을 피하기 위해 많은 어려움을 겪었다. 1. Index 컬럼 Drop Submit Form 을 보면 'Id' 와 'SalePrice' 컬럼만 제출하게 되어있다. 필자는 'Id' 컬럼을 pd.read_csv("filename",index_col = 'Id'..
-
파이썬 - 언더스코어 ( _ ) : Underscore프로그래밍 언어/Python 2020. 12. 17. 17:21
다른분들의 코드를 읽다보면 언더스코어( _ ) 때문에 당황하실법하다. 파이썬에서 Underscore는 다음과 같은 상황에서 사용된다고 한다. 1. 인터프리터(Intepreter)에서 사용될 때 - 마지막으로 사용한 값이 언더스코어에 자동저장된다. >>> 500 500 >>> _ 500 >>> _*5 2500 2. 값을 무시하고 싶을 때 # 해당 함수호출은 두개의 튜플을 반환하는데 X의 값만 필요할때, 이런식으로 사용한다. (X, _), (_, _) = tf.keras.datasets.mnist.load_data() # 반복문에서도 종종 볼수 있다. for _ in range(batchCount) : DoSomething() for key, _ in my_dictionary : DoSomething(key..
-
GAN - Mode CollapseData Analysis/Deep Learning 2020. 12. 17. 17:21
GAN 을 학습시키다보면 생성자(Generator)가 다양한 이미지를 만들어내지 못하고, 비슷한 이미지만 계속 생성하는 경우가 있는데, 이를 Mode Collapse라 칭한다. Mode는 최빈값, 가장 빈도가 높은 값을 말하며, Mode Collapse 를 MNIST 숫자데이터(0~9)에서 예로 들어 설명하자면, mode는 총 0~9, 10개이고 랜덤노이즈(z)를 입력으로 받는 생성자(G)가 판별자(D)를 속이기 위해 노이즈를 변환하는데, 변환된 데이터의 분포(라벨)이 특정 숫자(mode)에 치우칠때, Mode Collapse가 발생했다고 말합니다. 즉, Generator가 Discriminator를 속이기 위해 한 숫자에 가까운 벡터만 생성한다는 말입니다. Generator가 0~9 숫자 중, 랜덤노이..