상관계수와 검정 예시 (스피어만 서열, 켄달 타우계수) 상관계수(Correlation Coefficient)일반적으로 상관계수(Correlation Coefficient)는 피어슨의 적률 상관계수(Pearson's Product Moment Correlation Coefficient)를 간단히 지칭한 것으로서 두 변수가 모두 정규 분포를 따르고 등간, 비율척도로 측정되었을 때 두 변수 사이의 선형의 관계 정도를 하나의 수치로 나타낸 지표입니다. 기본적으로 두 변수 사이의 상관성을 나타내주는 지표는 두 변수간의 공분산(Covariance)입니다. 공분산이란 두 관심변수를 X, Y라고 했을 때 X의 증감에 따른 Y의 증감에 대한 척도로써, 기호로는 Cov(X, Y)로 나타냅니다. 그런데 공분산은 X와 Y의 ..
IP뜻, TCP/IP 프로토콜과 IP란 무엇인지 (Internet Protocol) Introduction TCP/IP 프로토콜, UDP, ICMP, IGMP 데이터는 모두 IP datagram으로 전송된다. TCP/IP 프로토콜을 시작하는 사람, 특히 X.25 또는 SNA와 IP뜻 기초 지식이 있는 사람은 IP란 신뢰성이 없고, 비연결형 서비스를 한다는 점에 놀란다. 신뢰성이 없다는 말은 IP datagram이 목적지에 성공적으로 도달하는 것을 보증하지 않는다는 뜻이다. 만일 문제가 있으면 (예를 들어 라우터의 일시적인 buffer full과 같은) IP란 간단한 에러처리 절차를 갖는다. datagram을 보내고 ICMP 메시지를 소스로 보낸다. 신뢰성은 상위 계층에서 제공할 것이다. IP뜻 중 비연결..
NFC 전송 데이터 교환 포맷, NDEF 레코드 구조 NFC 데이터 교환 포맷NFC 포럼은 태그 혹은 NFC 장치 사이의 데이터 전송 시 상호 호환성을 가능하게 NDEF 데이터 공통 포맷을 정의하였습니다. NDEF는 URL, 카드, 그리고 NFC 관련 데이터 타입을 전달할 수 있는 작고 컴팩트한 이진 포맷입니다. NDEF는 페이로드를 포함하는 일련의 레코드들로 구성된 메시지로 교환됩니다. . 페이로드 컨텐츠는 URL, MIME 미디어, 혹은 NFC 관련 데이터 타입이 될 수 있음.. NFC 관련 데이터 타입의 경우 - 페이로드 컨텐츠는 NFC RTD(Record Type Definition)에 정의됨.. 레코드 내의 데이터 타입과 레코드 크기는 페이로드가 붙여진 헤더에 포함.. 페이로드의 타입을 식별하기..
VisualStudio 2015 관리자 권한 실행 [윈도우10 비주얼스튜디오] dll 라이브러리 등을 사용하는 프로그램 제작 중, COM Interop 등록이 필요한 경우가 생겼습니다. 간단히 비주얼스튜디오 프로젝트의 속성 - 빌드 - 출력 - COM Interop 등록 체크를 하면 되죠. 문제는 이러려면 관리자 권한이 필요한데, 매번 빠른 실행 아이콘을 오른쪽 마우스로 눌러 관리자 권한으로 실행하는 것이 귀찮다는 것이죠. 위의 사진처럼 COM Interop 등록을 체크하는데엔 아무런 문제가 없습니다. 그러나, F6을 눌러 빌드하면 에러가 발생하죠. ".....dll" 어셈블리의 등록을 취소할 수 없습니다. 엑세스가 거부되었습니다. 관리자로 응용 프로그램을 실행하고 있는지 확인하십시오. 요청한 레지스트리..
Dictionary 복사. C# Dictionary에는 복사 생성자가 있습니다. 기존 딕셔너리 객체를 생성자로 넘기면 그대로 복사가 되는데, 현재로썬 가장 효율적인 방법입니다. 그리고 기존 딕셔너리를 수정해도 복사된 데이터엔 영향을 주지 않습니다. 예제. 간단한 반복문을 구현하여 C# Dictionary 아이템을 직접 복사할 경우엔 코드 중복 및 예상치 못한 에러가 발생할 수 있습니다. 반복문 자체가 비효율적이란 것이죠. Here: 아래 예제에선 복사 생성자를 사용해 딕셔너리 내부 데이터를 복사합니다. using System;using System.Collections.Generic; class Program{ static void Main() { // // Create and initialize Dic..
Ui 창에서 Qt 모달 다이얼로그 (modal dialog) 하나를 띄웁니다. 속성은 당연히 QDialog 입니다. 아래 그림처럼 Dialog를 새로 생성해야 합니다. 아래 그림은 qt 프로젝트에서 버튼이 없는 형태로 생성한 것입니다. 하지만, 다른 분들은 버튼이 있고 없고 크게 신경 안 쓰셔도 됩니다. 그저 다이얼로그만 생성하면 돼요. 아래는 Qt 모달 다이얼로그 띄우기 소스. #ifndef DLGCONFIG_H#define DLGCONFIG_H #include #include "ui_dlg_config.h" class DlgConfig : public QDialog{public: DlgConfig(QWidget *parent = 0); virtual ~DlgConfig(); private: Ui::u..
외부 단편화와 버디 시스템 (external fragmentation)커널은 연속적인 페이지 프레임 그룹을 할당하는 견고하고 효율적인 정책을 세워야 한다. 이때 메모리 관리와 관련한 유명한 문제인 '버디 시스템 알고리즘 외부 단편화(buddy system external fragmentation)'를 해결해야 한다. 외부 단편화(external fragmentation)는 다른 크기의 연속적인 페이지 그룹을 빈번하게 할당하고 해제하여, 할당한 페이지 프레임 블록 사이에 작은 여유 페이지 프레임 여러 개가 '산재'하는 현상이다. 그 결과 나중에는 큰 크기의 연속된 페이지 프레임 할당을 요청할 때 이를 담을 충분한 여유 페이지가 있어도 메모리를 할당하지 못할 수 있다. 8개의 페이지 프레임이 사용되고 있지 ..
Unplugging ethernet (이더넷 연결 끊김)Qt에서 tcp ip 소켓을 사용하다보면 끊어진 경우를 확인해야할 상황이 발생합니다. 굳이 Qt가 아니더라도 언제 어디서나 서비스 제공자는 무조건 통신 상태를 확인해야 합니다만, Qt 프로그래밍에선, 플러그가 뽑힌 경우를 체크하기 까다롭습니다. 왜냐면 QAbstractSocket 클래스가 제공하는 ConnectedState는 tcp ip 연결된 이후에 물리적인 플러그 뽑힘 현상을 알려주지 않습니다. 슬프게도, Qt가 제공하는 그 어떤 소켓 클래스들도 물리적인 플러그 Unconnected를 확인하질 못합니다. 그래서 돌아가는 방법을 찾아야 합니다. Simple Main Code (이더넷 연결 끊김 기본 소스)우선, 간단한 tcp ip Socket Pr..
아래는 간단한 모드버스 다이어그램입니다. 그리고 실제 Modbus ASCII와 RTU의 차이는 아래와 같습니다. 모드버스 프로토콜 차이점 (ASCII - RTU) Modbus/ASCII Modbus/RTU Characters ASCII 0...9 and A..F Binary 0...255 Error check LRC CRC Frame start character ':' 3.5 chars silence Frame end characters CR/LF 3.5 chars silence Gaps in message 1 sec 1.5 times char length Start bit 1 1 Data bits 7 8 모드버스 프로토콜 차이점 (시리얼 프로토콜) Parity even/odd none even/odd ..
변수 사이의 상관계수만을 구하고 싶을 경우 창에 아래 명령어를 입력합니다. (피어슨 상관분석에 필요) cor(x, y, trim=0, na.method="fail", unbiased=T) 상관분석 필요 인자x 숫자형(복소수 포함) matrix, vector 혹은 data frame 형태의 상관분석 관심변수 이름을 입력합니다. x가 matrix일 경우 열은 변수로 행은 개별 관찰치로 인식합니다. x가 data frame인 경우 숫자형이 아닌 변수는 결측치로 인식합니다. y 또다른 관심변수의 이름을 입력합니다. 형식은 x와 같으며 x변수와 같은 길이를 가진 변수를 입력해야 합니다. trim 낮은 확률밀도를 가진 관측치를 생략합니다. 0.5 보다 작은 값을 사용하며 생략된 관측치의 전체에 대한 비율을 나타냅니..
구글어스를 다뤄본 분들은 다들 아실만한 파일인 KML에 대한 글입니다. 2009년도에 논문 작성을 위해 정리한 글이라 지금과 다른 사항이 있을 수 있습니다. 구글어스 KML 파일을 다루기 위한 상세한 동영상도 제공되니 참고해 보세요. KML 101 -- How to Create Amazing Maps in Google Earth and Maps [클릭] Keyhole Markup Language - KML 가이드 Intro XML(eXtensible Markup Language)은 HTML(Hyper Text Markup Language)을 개선하여 생성된 언어로 웹 페이지의 구축과 기능을 향상시키며 시스템의 복잡한 연산 과정을 쉽게 처리하도록 돕는 언어로써, 사용 시기와 용도에 따라 구조적인 문법을 매..
MFC가 지원하는 것이 거의 없어서 일일이 코딩해야 한다는 단점이 있습니다. 그런데, 이 포스트에서 소개하는 차트처럼, 누군가 구현해서 공개하니 참 좋네요. 이 차트의 소스를 실행하면 아래처럼 그라데이션이 들어간 막대기들을 확인할 수 있습니다. 『그리드, 라벨, 툴팁 등』 차트나 그래프들이 가져야할 기본 요소들은 다 구현이 되어 있습니다. 이걸 응용해서 원하는데로 수정해 사용하면 되겠네요. 어느 분이 만든건진 모르겠으나 여튼, 감사합니다. 누가 만들어서 배포해 주신건진 모르겠으나 고맙네요. 관련 글[MFC] BCGControlBar Chart Control 예제, RC 코드 수정MFC BCGControlBar Chart Control 설치 [GUI 프로그래밍]MFC 스크롤바 Scrollbar 다이얼로그에..