본문 바로가기

MATLAB/ㄴ 기타

(59)
13. 테이블에서 정리되지 않은 데이터와 누락된 데이터 정리하기 테이블이 정리되지 않고 누락된 데이터 값을 갖는 경우 여러 가지 방법으로 테이블을 정리할 수 있습니다. 먼저, summary 및 ismissing 함수와 같은 함수를 사용하여 누락된 데이터를 식별할 수 있습니다. 누락값을 식별한 후 standardizeMissing, fillmissing 또는 rmmissing 함수를 사용하여 누락값을 표준화하거나 채우거나 제거할 수 있습니다. 그런 다음 테이블을 재구성하여 테이블을 추가적으로 정리할 수 있습니다. sortrows 또는 movevars 함수와 같은 함수를 사용하여 적합한 순서로 테이블의 행과 변수를 재정렬할 수 있습니다. 1) 파일의 데이터 검토하기 쉼표로 구분된 값(CSV) 샘플 파일 messy.csv의 데이터를 검토합니다. 데이터를 검토하려면 가져오기..
12. 테이블을 생성하고 테이블에 데이터 할당하기 테이블은 텍스트 파일 또는 스프레드시트의 테이블 형식 데이터와 같은 열 방향 데이터에 적합합니다. 테이블은 데이터 열을 변수로 지정합니다. 테이블에 포함된 변수는 데이터형이 서로 다를 수 있습니다. 그러나 모든 변수의 행 개수는 동일해야 합니다. 하지만 테이블 변수는 열 벡터로만 저장하는 것으로 한정되지 않습니다. 예를 들어, 테이블 변수는 여러 열로 구성된 행렬을 포함할 수 있습니다. 단, 다른 테이블 변수와 동일한 개수의 행을 가져야 합니다. MATLAB에서는 여러 가지 방법으로 테이블을 생성하고 여기에 데이터를 할당할 수 있습니다. * table 함수를 사용하여 입력 배열에서 테이블을 만듭니다. * 점 표기법을 사용하여 기존 테이블에 변수를 추가합니다. * 빈 테이블에 변수를 할당합니다. * arr..
11. 셀형 배열과 구조체형 배열 이 예제에서는 셀형 배열과 구조체형 배열을 비교하고 각 유형의 배열에 데이터를 저장하는 방법을 보여줍니다. 둘 다 유형과 크기가 각기 다른 데이터를 저장할 수 있습니다. 1) 구조체형 배열 구조체형 배열은 이름을 기준으로 액세스하는 필드의 데이터를 포함합니다. 예를 들어, 구조체형 배열에 환자 레코드를 저장해 보겠습니다. 각 환자에 대한 테스트 결과를 보여주는 막대 그래프를 생성합니다. 2) 셀형 배열 셀형 배열은 숫자 인덱싱을 사용하여 액세스하는 셀의 데이터를 포함합니다. 셀형 배열은 주로 개별 텍스트 조각을 저장하거나 스프레드시트의 이종 데이터를 저장하는 데 쓰입니다. 예를 들어, 3개의 도시에 대해 셀형 배열에 시간 경과에 따른 온도 데이터를 저장해 보겠습니다. 날짜별로 각 도시의 온도를 플로팅합니..
10. 셀형 배열의 내용을 함수로 전달하기 다음 예제에서는 셀형 배열을 입력값으로 인식하지 않는 MATLAB 함수로 셀형 배열의 데이터를 전달하는 여러가지 방법을 보여줍니다. 1) 중괄호 { } 를 사용한 인덱싱으로 단일 셀의 내용 전달하기 이 예제에서는 텍스트와 더불어 난수로 구성된 20 x 2 배열을 포함하는 셀형 배열을 생성합니다. 내용의 요소까지 한 단계 더 깊이 참조(멀티레벨 인덱싱)하여 데이터의 첫 번째 열만 플로팅합니다. 2) cell2mat을 사용하여 여러 셀의 숫자형 데이터 결합하기 이 예제에서는 3개의 도시에 대한 온도 데이터를 저장하는 5 x 2 셀형 배열을 생성한 후 날짜별로 각 도시의 온도를 플로팅합니다. 3) 함수에 쉼표로 구분된 목록 형태로 여러 셀의 내용 전달하기 이 예제에서는 X에 대한 Y를 플로팅한 후 2 x 3 ..
9. 셀형 배열의 데이터에 액세스하기 이 예제에서는 셀형 배열에서 데이터를 읽고 쓰는 방법을 보여줍니다. 텍스트 데이터와 숫자형 데이터로 구성된 2 x 3 셀형 배열을 생성합니다. 셀형 배열의 요소를 참조하는 방법으로는 두 가지가 있습니다. 셀 집합을 참조하려면(배열의 서브셋을 정의하려는 경우) 인덱스를 소괄호 ( ) 로 묶으십시오. 개별 셀 내의 텍스트, 숫자, 또는 기타 데이터를 참조하려면 인덱스를 중괄호 { } 로 묶으십시오. 1) 소괄호를 사용하여 셀 인덱싱하기 소괄호로 묶인 셀형 배열 인덱스는 셀 집합을 참조합니다. 예를 들어, C의 서브셋인 2 x 2 셀형 배열을 만들려면 괄호를 사용하십시오. 셀 집합을 동일한 개수의 셀로 대체하여 셀 집합을 업데이트합니다. 예를 들어, C의 첫 번째 행에 포함된 셀을 동일한 크기 (1 x 3)의..
8. 날짜/시간을 율리우스 적일 또는 POSIX 시간으로 변환하기 특정 시점을 특화된 수치 형식으로 표시하기 위해 datetime형 배열을 변환할 수 있습니다. 일반적으로 이런 형식은 지정된 시작 시점 이후 경과한 초 또는 일수로 특정 시점을 표시합니다. 예를 들어, 율리우스 적일은 율리우스 주기가 시작된 이후 경과한 일수와 소수 일(Fractional Day)입니다. POSIX 시간은 1-Jan-1970(1970년 1월 1일) 00:00:00 UTC(협정 세계시) 이후 경과한 초입니다. MATLAB은 datetime형 배열을 율리우스 적일과 POSIX 시간으로 변환하는 juliandate 함수와 posixtime 함수를 제공합니다. datetime형 배열에 반드시 표준 시간대를 지정할 필요는 없지만, "표준 시간대가 지정되지 않은" datetime형 값을 율리우스 적..
7. 날짜/시간 산술 연산 이 예제에서는 날짜/시간 값을 더하거나 빼서 정확한 단위나 달력 단위로 미래날짜, 과거날짜, 경과기간을 계산하는 방법을 보여줍니다. 다른 MATLAB 데이터형에 이러한 연산자를 사용할 때와 동일한 방식으로 날짜/시간 배열을 더하고, 빼고, 곱하고 나눌 수 있습니다. 1) datetime형 배열에 기간을 더하거나 빼기 datetime형 스칼라를 생성합니다. 기본적으로 datetime형 배열은 표준 시간대와 연결되지 않습니다. 시간 시퀀스를 더하여 미래의 특정 시간을 구합니다. t2의 각 datetime형 값 쌍 간의 차분이 1시간인지 확인합니다. diff는 정확한 시간, 분, 초 숫자값으로 기간을 반환합니다. 날짜/시간에서 분 시퀀스를 빼서 과거의 특정 시간을 구합니다 숫자형 배열을 datetime형 배열..
6. string형 배열의 텍스트 데이터 분석하기 이 예제에서는 파일의 텍스트를 string형 배열로 저장하고, 빈도별로 단어를 정렬하고, 결과를 플로팅하고, 파일에서 발견된 단어에 대한 기본 통계량을 수집하는 방법을 보여줍니다. 1) 텍스트 파일을 string형 배열로 가져오기 fileread 함수를 사용하여 셰익스피어의 소네트에서 텍스트를 읽습니다. fileread는 텍스트를 1 x 100266 문자형 벡터로 반환합니다. string 함수를 사용하여 텍스트를 문자열로 반환합니다. 그런 다음, splitlines 함수를 사용하여 새 줄 문자에서 분할합니다. sonnets는 2625 * 1 string형 배열이 되며, 이 배열의 각 문자열에는 시의 한 라인이 포함됩니다. sonnets의 처음 다섯 줄을 표시합니다. 2) string형 배열 정리하기 so..