본문 바로가기
300x250

전체 글94

apply(lambda if) 함수 데이터프레임 Pandas if else 사용법 판다스 데이터프레임을 조작할 때, 내가 원하는 함수를 만드는 경우가 있다. 즉, def를 이용해 함수로 나타낸 코드의 return 값을 모든 데이터프레임에 적용할 수 있다는 것인데, 이럴 때 이용하는 것이 apply 함수이다. 리스트에서 map 함수가 있다면, 데이터프레임에는 apply 함수가 있다. map과 apply도 아래에서 간단히 살펴보자. 전체 데이터프레임이나 특정 칼럼 값을 일괄적으로 가공하는 게 더 빠르겠지만, 특정 조건을 걸어서 조금 더 복잡하게 데이터를 가공해야 할 때 lambda식과 결합하여 apply lambda를 이용하는 것이 좋다. 파이썬 Python list apply lambda x y 함수 먼저 lambda(람다) 함수에 대해서 먼저 알아보자. lambda 함수는 함수명을 프.. 2022. 9. 29.
비전공자 데이터분석 가능할까? 데이터시각화부터 시작하기 최근 데이터에 대한 관심은 날로 높아지고 있다. 이에 따라 데이터와 관련된 전공이 아니더라도 데이터를 분석해야 하는 역량이 필요해지고 있는데, 무엇보다 비전공자 데이터분석가 취업이 가능한가? 하는 의문이 많은 것으로 생각된다. 관련된 정보와 교육은 참 많다. 6개월만에 데이터분석가로 취업하기, 심지어 30일 만에 데이터 사이언티스트 되기와 같은 프로그램을 본 적도 있다. 그러나 비전공자라는 단어에는 내가 해당 분야를 공부해본 적이 없는 초심자라는 명제가 붙는다. 해당 프로그램 내의 SQL, R, 파이썬, 머신러닝, 통계와 수학 지식 등을 짧은 기간 내에 비전공자 수강생이 모두 소화해내려면 얼마나 많은 노력이 필요할까? 전공과 비전공에 상관없이, 많은 시간과 노력을 들일수록 꿈을 이루는 것은 분명히 가능한.. 2022. 9. 17.
[Git] 초보가 자주 쓰는 필수 Git 명령어 모음 정리 개인적으로 수행하는 프로젝트나 코드를 Git으로 관리하기로 다짐하고, 가끔씩 깃허브를 업데이트하고 있다. 그 중, 나와 같은 초보가 꼭 알고 있어야 하는 꿀팁과, 자주 쓰는 필수 Git 명령어 모음을 간단히 정리해둔다. 1. Git Bash 활용 Git Bash를 잘 활용하면 하나하나 경로를 이동해야만 하는 불편함을 해소할 수 있다. 바로 이렇게 Repo로 지정할 폴더를 우클릭해서, 'Git Bash Here'를 누르면 바로 해당 경로에서 Git Bash가 실행되기 때문에 아주 편리하게 코드를 업데이트할 수 있다! 2. Repository로 지정 나는 아직 초보이지만, 가끔 아무리 구글링을 해도 나오지 않는 경우 내가 필요한 코드를 작성하는 경우가 있다. 높은 수준은 아니더라도 혹시나 필요한 분들을 위해.. 2022. 9. 11.
Toucan(투칸)은 어떻게 하루 5시간 외국어 공부를 하게 만들었나? 오늘은 따로 시간을 내지 않아도 새로운 언어를 공부할 수 있도록 도와주는 획기적인 크롬 브라우저 확장 프로그램인 투칸(Toucan)에 대해서 알아보자. 사진은 모두 원문인 https://read.first1000.co/p/toucan 에 업로드된 사진이다. A little bit about Toucan + the team behind it Toucan은 특정 페이지의 단어 일부를 번역하고 강조 표시하는 크롬 확장 프로그램이다. 사용자는 앱을 다운로드할 필요도 없고, 획일적인 커리큘럼으로 새로운 언어를 배우기 위해 따로 시간을 낼 필요도 없다. 단순히 여러 웹페이지를 돌아다니는 동안 언어에 몰입할 수 있게 해 준다. (참고로 그들은 지난주(2021년 2월)에 450만 달러의 시드 라운드를 발표했다.) 테일.. 2022. 9. 4.
Github(깃허브) 창업부터 75억 달러 인수까지 깃허브(Github)의 핵심은 개발자들을 위한 구글 문서라는 것이다. 이를 통해 개발자들은 코드 기반의 협업, 공유 및 유지보수를 대규모로 수행할 수 있다. 하지만 실상은 그 이상으로, 코드를 위한 앱 스토어, 개발자를 위한 이력서, 그리고 개발자들이 발명한 것들을 세상과 공유하는 소셜 네트워크의 기능을 하고 있다. 깃허브(Github)의 스토리는 여러 면에서 독특하다. - 2018년, 스카이프(Skype)와 링크드인(Linkedin)에 이어 75억 달러라는 금액으로 마이크로소프트(Microsoft)의 세 번째로 큰 인수 대상이 되었다. - 2008년 원격근무 회사에서 2010년 하이브리드 회사로 성공적으로 전환했는데, 이는 하이브리드라는 용어가 나오기도 전의 일이다. - 투자를 받기도 전에, 누구의 도.. 2022. 8. 29.
Calendly(캘린들리)의 성공 비결과 성장 과정 알아보기 오늘은 캘린들리(Calendly)에 대해서 자세히 알아보자. 개요 캘린들리(Calendly)는 굉장히 쉽게 미팅을 예약할 수 있는 *Scheduling platform(스케줄링 플랫폼)이다. VC의 조언을 무시하는 상이 있다면 아마도 그 수상자가 될 캘린들리(Calendly)의 설립자 토프 아와토나(Tope Awotona, 이하 Tope)는 **YC, Andreessen, Benchmark 등으로부터 전형적으로 들을 수 있는 조언들과 정반대로 아래와 같은 일을 했다. 애틀란타 주(Atlanta)에 본사를 뒀다. 처음부터 수익성 있는 비즈니스 모델을 구축하고, 초기 9년 동안 ***단 55만 달러(현재 한화로 약 7억 3천만 원)만을 투자받았다. 초기 프로덕트를 우크라이나에 아웃소싱했다. 캘린들리(Cale.. 2022. 8. 21.
[Pandas] 판다스 결측치 제거 대체 fillna(0) 간단히 응용하기 칼럼에 값이 없는 공백값일 때, 즉 Null값이 존재할 때, 판다스는 이를 NaN으로 표기한다. 엄밀히 말하면 공백을 의미하는 Null, 숫자가 아니라는 뜻의 NaN(Not a Number), NA(Non Available)은 다른 뜻이지만 판다스에서 다루는 결측치는 NaN으로 이해하는 것이 편할 것이다. NaN은 평균이나 합계를 계산할 때 제외가 되는 등, 말 그대로 사용할 수 없는 데이터를 의미하기 때문에 적절한 처리를 거쳐주는 과정이 필요하다. 실무에서는 여러 가지 상황과 요인을 고려해야 하기 때문에 꽤 많은 고민을 거쳐야 하지만, 이 포스팅에서는 특정 값으로 대체하거나 제거하는 방법론적인 부분만 다룰 예정이다. Pandas isna() 먼저 NaN 값이 존재하는지 여부를 확인하기 위해서는 판다스 .. 2022. 8. 17.
[Pandas] 판다스 정렬 sort_values groupby 판다스 정렬 sort_values 데이터프레임과 시리즈 정렬 모두 sort_values()를 이용하면 된다. sort_values는 RDBMS SQL의 order by와 매우 유사한 기능으로, by=['칼럼명'] 으로 특정 칼럼 기준 정렬을 수행할 수 있고 ascending=True로 오름차순, False로 내림차순 정렬이 가능하다.(기본은 True 즉 오름차순) inplace=True 로 데이터프레임의 정렬 결과를 그대로 적용할 수도 있다.(기본은 False) 판다스 Aggregation SQL의 aggregation 함수와 비슷하게 min, max, sum, count와 같은 기초 통계량을 계산할 수 있지만, 판다스 Aggregation은 데이터프레임에서 바로 호출해서 칼럼들 전체에 적용할 수 있다... 2022. 8. 17.
[Pandas] 판다스 loc iloc 원하는 행 열만 선택하기 with 위치 기반, 명칭 기반 인덱싱의 이해 판다스에서 원하는 행만 혹은 열만 선택하기, 즉 특정 데이터 선택을 위한 데이터 셀렉션과 필터링은 넘파이와 비슷하기도 하고 다르기도 하다. 넘파이에서 []를 이용해서 단일 값 추출, 슬라이싱 등을 통해 데이터를 추출했는데, 판다스에서는 iloc[]와 loc[]를 이용한다. 먼저 판다스 데이터프레임의 [] 연산자에 대해서도 이해해보자. Pandas Dataframe [] 데이터 프레임 바로 뒤, [] 안에 들어갈 수 있는 건 칼럼 명 문자, 칼럼 명의 리스트 객체, 인덱스로 변환 가능한 표현식이다. 한 마디로 칼럼을 지정할 수 있는 연산자이다. 데이터프레임명['칼럼명']으로 특정 칼럼을 선택할 수 있고, 데이터프레임명[['칼럼명1', '칼럼명2']] 와 같이 여러 칼럼 선택도 가능하다. titanic_df.. 2022. 8. 16.