ICT인턴십은 "국내외 기업에서 제안한 ICT분야 직무 중ㅅ미의 프로젝트, 서비스 개발 등에 대학생이 참여하여 인턴십을 수행하고, 이를 학점으로 인정받도록 하는 이론과 실무 역량을 겸비한 문제해결형 창의인재양성 프로그램"이다. 뭔가 멋드러지게 써놓긴 했는데 사실 내가
SQL SELECT 문 처리 순서에 대해서 알아보았다. SELECT - FROM - WHERE - GROUP BY - HAVING - ORDER BY 순서로 쿼리문이 작성되었을 때,DBMS 내부적으로 FROM - WHERE - GROUP BY - HAVING - ORD
집계 함수를 이용한 수식은 HAVING절에서만 가능하다.위 와 같은 수식은 적절한 SQL문으로서 작동하지 않는다.제대로 작성한 SQL문을 아래에 남긴다.image.png위 사진과 같은 테이블에서 SELF JOIN을 사용할 만한 합리적인 이유를 찾아냈다!만약에 연도에 따
.py 확장자를 가진 파일을 실행하게 되면 기본적으로 name 값을 파일 명으로 가지게 된다. 그리고 시작 파일(main)만 디폴트로 main이라는 값을 가지게 되는데 이것으로 코드 상에서 현재 경로가 시작 지점인지 아닌 지를 판단할 수 있다.위와 같은 조건식을 통해
PyQt는 Qt의 레이아웃에 Python 코드를 바인딩하여 GUI 프로그램을 만들 수 있게 해주는 프레임워크이다.기본적으로 PyQt5 라이브러리의 내부 모듈(QtCore, QtGui, QtWidgets)을 import하여 사용하는데화면으로 사용할 클래스에 QMainWi
True Positive: 실제로 양성인 것을 양성으로 판단한 것False Negative: 실제로 양성인 것을 음성으로 잘못 판단한 것(모델이 찾아내지 못함)False Positive: 실제로 음성인 것을 양성으로 잘못 판단한 것(모델이 이상한 것을 찾아냄)True
init 함수는 Class의 생성자를 정의할 때 사용하는 함수이다. 하지만 call함수의 경우에는 Instance에서 바로 호출하는 경우에 사용하는 함수이다.위 예시처럼 Class scope으로 호출하는 경우에는 init, Instance scope으로 호출하는 경우에
파이썬은 C/C++, Java와 같이 소켓 프로그래밍을 지원한다. 세부 설정 명령어는 언어에 따라 다르지만 연결 및 통신 프로세스 자체는 같다.서버 측 순서는 다음과 같다.소켓 생성바인딩리스닝listen에 대한 인자는 외부 연결을 거부하기 전에 최대 5개의 연결 요청을
데이터 수집, 가공, 분석을 통해 인사이트를 추출하여 더 나은 의사 결정에 도움을 주는 전문가가설 수립 -> 가설 검증 -> 결론 도출 -> 비즈니스Python, R과 같은 빅데이터를 처리할 수 있는 언어redis, mongoDB와 같은 비정형, 빅데이터를 저장할 수
이전에 PyQt에 MVC 패턴을 적용하기 어렵다는 얘기를 한 적이 있는데 여러 포스팅을 찾아다닌 끝에 pyqtSignal 기능을 통해 구현할 수 있었다.pyqtSignal은 QtCore 내부의 클래스인데 특성 상황에 시그널을 발생시킬 수 있고 시그널을 슬롯과 연결해 시
화면 구현에 앞서 QMainWindow의 setCentralWidget()을 이용해 여러 화면을 번갈아 가면서 표시할 수 있는지 확인하였다. 일단 화면을 전환하는 것은 가능했다.마우스로 한번의 클릭이 발생하면 화면(groupbox = QWidget)을 전환하는 Pyth
파이썬에는 문자열에 다른 문자열을 삽입하는 방법에는 여러 가지가 존재한다.1\. '%s'를 이용하는 방법2\. str.fomat()을 이용하는 방법3\. f'str'을 이용하는 방법하지만 중괄호를 여러 겹으로 사용할 때는 2, 3번 방법이 불가능하다. 간편하게 쓸 수
어떤 Object에 대한 setAlignment는 해당 객체 내부의 Object에 대한 배열을 의미한다. 따라서 객체들의 배열을 바꾸기 위해 현재 객체들을 조정하는 바보 같은 짓은 하지 말자...위 코드처럼 각각의 위젯에 Alignment를 지정해줘도 layout 내에
파이썬의 리스트 자료구조를 보면 슬라이싱과 같이 여러 개의 요소를 한번에 처리하는 작업을 쉽게 처리하는 기능을 제공한다. 변수 패킹, 언패킹 또한 슬라이싱과 같이 여러 요소들을 한번에 처리하는데 도움을 주는 기능이다.위와 같은 코드는 list에 얼마나 원소가 존재하는지
혹시라도 변수명이 다른 변수 들을 반복적으로 생성할 일이 생긴다면 globals()를 활용할 수 있다. 일반적으로 객체 지향적으로 프로그래밍을 한다면 사용할 일이 없지만 어떤 로직에 대해 테스트 해볼 때 사용할 수도 있을 것 같다.위 반복문을 확인하면 globals()
PyQt에서도 다른 프레임워크처럼 UI 객체의 margin과 padding을 적용할 수 있게 되어있다. 하지만 margin과 padding 때문에 내외부의 객체들과 충돌이 생길 수도 있다. 이렇게 되면 PyQt 자체적으로 겹치지 않게 하는 기능이 작동해서 화면이 늘어진
Matplotlib는 Python에서 수치 데이터들을 간단하게 시각화하기 위해 사용하는 라이브러리이다.수치로만 확인할 때, 볼 수 없는 부분들을 시각화 함으로써 자료로 남길 수 있고 개발자 수준에서의 의사 결정을 도와준다.기본적으로 pyplot을 plt 예약어로 받아오
현장 1~5까지의 데이터를 각 모델에 fine tuning한 결과로 model 1~5 그리고 all model 이렇게 5개의 모델이 생성됬다. 이렇게 생성된 모델의 정확도 수준을 분석했고 대부분의 모델이 수그린 자세에 대해 많이 학습되었고 fine tuning이 되지
이전까지는 Confusion Matrix를 이용해서 모델의 성능을 정량적으로 평가했지만 조금더 직관적이고 시각적으로 표현할 수 있는 성능 평가 지표를 소개하고자 한다!ROC curve: 위양성률(False Positive Rate)를 x축으로 가지고 민감도(Sensit
PyQt는 Qt의 레이아웃에 Python 코드를 바인딩하여 GUI 프로그램을 만들 수 있게 해주는 Python 라이브러리이다.기본적으로 PyQt5 라이브러리의 내부 모듈(QtCore, QtGui, QtWidgets)을 import하여 사용하는데화면으로 사용할 클래스에
Qt를 사용하다 보면 윈도우와 위젯의 차이가 모호하게 느껴질 때가 있어서 이렇게 정리해보았다.QMainWindow : 최상위 위젯이 되어 메뉴바, 상태 표시줄 과 같은 항목들이 정의된 레이아웃. 이때, 새롭게 QMainWindow가 생성되면 자동으로 Qwidget이 하