본문 바로가기

Software/Python

(78)
Python에서 인터랙티브한 반응과 애니메이션 구현하기 2018. 9. 17. 12:22 예전에 python의 matplotlib를 이용해서 애니메이션을 구현하는 이야기를 간단히 해보았습니다. 이번에는 조금 더 재미있는 애니메이션 이야기를 해보고 싶네요.^^. 화면에 점 하나를 찍고, 마우스로 다른 곳을 클릭하면 그 점이 천천히 따라오게 하는 것이죠^^ 코드는 import matplotlib.pyplot as plt import numpy as np x_goal = 1 y_goal = 1 x = 1 y = 1 dt = 0.01 Kp = 7 def click(event): global x_goal, y_goal x_goal = event.xdata y_goal = event.ydata fig = plt.figure() fig.canvas.mpl_connect("button_press_event..
아나콘다 Anaconda에서 가상환경에 텐서플로우 설치 2018. 6. 1. 08:00 아주 예전에 텐서플로우 설치에 관한 글[바로가기]을 올렸는데요. 당시에 사용한 방법이 아나콘다에서 가상환경을 만들어서 진행하는 것이었습니다. 뭐 가상환경 이런거 안할 거면 그냥 pip로 설치해도 되구요^^. 그러나 텐서플로우는 공부하는 교재 혹은 자료의 버전에 따라 조금씩 사용법이 달라질 수 있어서 가상환경으로 버전관리를 하는 것이 꽤 중요합니다. 오늘은 그 때 이야기를 좀 더 보강하는 것입니다.먼저 conda create 명령으로 이름을 py36_tf14로 해서 python 3.6버전 텐서플로우 1.4버전을 깔도록 합니다. python 옵션에 python 3.6이라고 적어 주었습니다.쭈욱~ 진행해 주면 됩니다.이제.. conda env list 명령으로 확인해보면.. 설정한 이름으로 잘 ~~~ 만들어졌..
Pandas 데이터프레임에서 컬럼값을 행방향 기준으로 정렬한 순위 만들기 argmax, idxmax, argsort 2018. 5. 30. 08:00 오늘은 누구나 한 번쯤 Pandas 데이터 프레임으로 작업을 하다가 필요하게 되는 순간이 오는~^^ 그런 일이 참 많지만~ 그 중에 하나를 소개하려고 합니다. 즉, 이렇게 구성된 표가 있는데... 우측 빈칸은 제일 큰 값을 가지는 컬럼의 값부터 순차적으로 입력하는 거죠.이런 결과가 나오게 하고 싶은 겁니다.^^ 먼저.. 최대값을 하나만 찾는 거라면 꽤 간단합니다.연습용 데이터 하나 만들고~바로 pandas의 idxmax()를 이용하면 됩니다. (이전 버전에서는 argmax()였습니다.) 컬럼 '신발'이 최대인 행의 값을 보여주고...이렇게 하면 1순위라는 컬럼을 만들고 각 행방향 최대값을 넣을 수 있습니다.^^처음 이야기한 것 처럼 아예 순위별로 다 입력해 두고 싶다면~^^ 다시 데이터를 만들고...먼저..
아나콘다 환경이 여러개일 때 VSCode 적용하기 2018. 5. 28. 08:00 Python 개발 도구로 VSCode를 소개한 적이 있구요. 또, ROS 개발 환경으로는 또 어떠냐는 소개도 한 적이 있네요.^^ 이제... 또 하나 VSCode 관련 이야기를 드릴려구요. 바로, 아나콘다를 사용하다보면 conda env를 여러개 만들게 되는데요. 이때 jupyter notebook이야 각 환경에서 실행하면 알아서 되는건데, VSCode는 안 그렇거든요. 오늘은 여러개 환경에서 어떻게 VScode를 적용하는지를 보여드릴려구요^^예를 들어 위와 같이 콘다 환경이 있다고 보구요^^예를들어 저 폴더의 파일을 실행시키고자 한다고 보죠. 아참 저건 한 2-3년전쯤에 제가 로보틱스로 유명한 Craig의 책을 다시 공부하면서 그 책 Craig 책의 예제를 Python으로 실습해 보던 코드로, Gith..
Numpy의 polyfit과 poly1d의 사용법 - 최소제곱법과 polynomial class 2018. 5. 14. 08:00 제가 아주 예전에 공업수학 연재를 하면서 최소제곱법을 소개했던 적이 있습니다. 에러의 제곱의 합을 최소화하는 공업수학적 방법인데 아주 유용합니다. 그리고, 이를 이용한 Python의 Numpy 함수인 polyfit을 이용해서 최근 제가 집필한 책 파이썬으로 데이터 주무르기 1장에서 서울시 구별 CCTV의 수와 인구수와 관계를 직선으로 표현하려고 또 사용을 했죠. 초급자를 대상으로 해서, 머신러닝의 개념을 사용한 것은 아니었습니다. 그러다가 이 두 함수, polyfit과 poly1d의 사용예를 좀 더 보여드리고 싶다고 생각을 한거죠^^ import numpy as np import matplotlib.pyplot as plt %matplotlib inline t = np.arange(0, 10, 0.01)..
Pandas 기초 명령 - 컬럼추가, 행추가, 컬럼 순서 변경 등 2018. 5. 4. 08:00 요즘 저는 매주 토요일에 Fastcampus에서 Python을 활용한 데이터분석 입문[바로가기]이라는 수업을 진행하고 있는데요. 이 수업을 진행하다보니.. 놓치는 것이 몇 가지 있는 것 같습니다. 그게 수강하시는 분들이 궁금해 하시던 것인데.. 제가 놏치고 지나가 버린 거죠ㅠㅠ. 죄송하고 안타까운 마음에 간단한 몇가지 명령을 소개합니다. 은근 필요한 것인데 또 검색에서 잘 안나타나기도 하구요^^ 그래서 이전에 했던 pandas 연재[바로가기]에 하나 추가해서 글 하나 더 작성합니다.~^^먼저 dict형으로 data를 하나 만들어서~pandas DataFrame으로 만들었습니다. 연습해야죠~^^먼저 컬럼 column의 순서를 변경하는 것입니다.혹은 index의 순서도 바꾸고 싶을 수 있죠^^아.. 컬럼을 ..
Matplotlib에서 그래프를 애니메이션으로 표현하기 2018. 5. 2. 08:00 Python이든 뭐든 데이터를 시각화하는 것은 항상 필요한 과정입니다. 그런데 그 데이터가 너무 길어 한 화면에 담아보면 구분이 되지 않거나, 시간의 흐름에 대해 약간 강조하고 싶다면 애니메이션 효과를 찾아보게 되죠. 당연히 Matplotlib도 그에 대한 대응을 해주고 있습니다. 추가로 Jupyter Notebook 화면에서 이를 구현하는 예제가 matplotlib에 있길래 이를 잠시 테스트해 보았습니다.^^ 먼저... import numpy as np import matplotlib.pyplot as plt %matplotlib inline from matplotlib import animation, rc 이렇게 초기화를 하구~~~ fig, ax = plt.subplots() ax.set_xlim((..
Jupyter Notebook 화면을 바로 프리젠테이션 Slide로 구성하자 - datitran-jupyter2slides - 2018. 4. 25. 08:00 Jupyter Notebook은 참 편리한 도구입니다. 마크다운 문서를 사용할 수 있는 것도 그렇고 실행 결과를 바로 볼 수 있는 것과 다시 문서를 읽었을때, Out sessino에 실행 결과를 바로 확인할 수 있다는 정말 많은 장점들을 가지고 있습니다. 이렇게 Jupyter Notebook을 사용하다보면 또 한 가지 작은(^^) 욕심이 생기는데요. 바로 Presentation입니다. Jupyter Notebook의 코드와 결과를 일일이 캡쳐해서 파워포인트에 넣기 귀찮을 때가 있거든요^^ 오늘은 그 이야기를 해볼려고 합니다.~언제나 그렇듯 Python 세계와 오픈소스 세계에 어디나 존재하는 수많은 고마운 분들(^^) 중 한 분이 또 저렇게 뭔가 멋진 것을 공개했습니다. jupyter2slides[바로가기..

반응형